mirror of https://github.com/zeldaret/tp.git
198 lines
8.8 KiB
ArmAsm
198 lines
8.8 KiB
ArmAsm
.include "macros.inc"
|
|
|
|
.section .text, "ax" # 8030ce18
|
|
|
|
|
|
.global get__13J2DDataManageFPCc
|
|
get__13J2DDataManageFPCc:
|
|
/* 8030CE18 00309D58 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8030CE1C 00309D5C 7C 08 02 A6 */ mflr r0
|
|
/* 8030CE20 00309D60 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8030CE24 00309D64 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8030CE28 00309D68 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8030CE2C 00309D6C 7C 9E 23 78 */ mr r30, r4
|
|
/* 8030CE30 00309D70 83 E3 00 00 */ lwz r31, 0(r3)
|
|
/* 8030CE34 00309D74 48 00 00 24 */ b lbl_8030CE58
|
|
lbl_8030CE38:
|
|
/* 8030CE38 00309D78 80 7F 00 04 */ lwz r3, 4(r31)
|
|
/* 8030CE3C 00309D7C 7F C4 F3 78 */ mr r4, r30
|
|
/* 8030CE40 00309D80 48 05 BB 55 */ bl strcmp
|
|
/* 8030CE44 00309D84 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8030CE48 00309D88 40 82 00 0C */ bne lbl_8030CE54
|
|
/* 8030CE4C 00309D8C 80 7F 00 00 */ lwz r3, 0(r31)
|
|
/* 8030CE50 00309D90 48 00 00 14 */ b lbl_8030CE64
|
|
lbl_8030CE54:
|
|
/* 8030CE54 00309D94 83 FF 00 08 */ lwz r31, 8(r31)
|
|
lbl_8030CE58:
|
|
/* 8030CE58 00309D98 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8030CE5C 00309D9C 40 82 FF DC */ bne lbl_8030CE38
|
|
/* 8030CE60 00309DA0 38 60 00 00 */ li r3, 0
|
|
lbl_8030CE64:
|
|
/* 8030CE64 00309DA4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8030CE68 00309DA8 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8030CE6C 00309DAC 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8030CE70 00309DB0 7C 08 03 A6 */ mtlr r0
|
|
/* 8030CE74 00309DB4 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8030CE78 00309DB8 4E 80 00 20 */ blr
|
|
|
|
.global get__13J2DDataManageFP14JSUInputStream
|
|
get__13J2DDataManageFP14JSUInputStream:
|
|
/* 8030CE7C 00309DBC 94 21 FE E0 */ stwu r1, -0x120(r1)
|
|
/* 8030CE80 00309DC0 7C 08 02 A6 */ mflr r0
|
|
/* 8030CE84 00309DC4 90 01 01 24 */ stw r0, 0x124(r1)
|
|
/* 8030CE88 00309DC8 39 61 01 20 */ addi r11, r1, 0x120
|
|
/* 8030CE8C 00309DCC 48 05 53 51 */ bl _savegpr_29
|
|
/* 8030CE90 00309DD0 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8030CE94 00309DD4 7C 9E 23 78 */ mr r30, r4
|
|
/* 8030CE98 00309DD8 7F C3 F3 78 */ mr r3, r30
|
|
/* 8030CE9C 00309DDC 38 80 00 01 */ li r4, 1
|
|
/* 8030CEA0 00309DE0 81 9E 00 00 */ lwz r12, 0(r30)
|
|
/* 8030CEA4 00309DE4 81 8C 00 10 */ lwz r12, 0x10(r12)
|
|
/* 8030CEA8 00309DE8 7D 89 03 A6 */ mtctr r12
|
|
/* 8030CEAC 00309DEC 4E 80 04 21 */ bctrl
|
|
/* 8030CEB0 00309DF0 7F C3 F3 78 */ mr r3, r30
|
|
/* 8030CEB4 00309DF4 38 81 00 08 */ addi r4, r1, 8
|
|
/* 8030CEB8 00309DF8 38 A0 00 01 */ li r5, 1
|
|
/* 8030CEBC 00309DFC 4B FC F3 DD */ bl read__14JSUInputStreamFPvl
|
|
/* 8030CEC0 00309E00 8B E1 00 08 */ lbz r31, 8(r1)
|
|
/* 8030CEC4 00309E04 28 1F 00 00 */ cmplwi r31, 0
|
|
/* 8030CEC8 00309E08 40 82 00 0C */ bne lbl_8030CED4
|
|
/* 8030CECC 00309E0C 38 60 00 00 */ li r3, 0
|
|
/* 8030CED0 00309E10 48 00 00 28 */ b lbl_8030CEF8
|
|
lbl_8030CED4:
|
|
/* 8030CED4 00309E14 7F C3 F3 78 */ mr r3, r30
|
|
/* 8030CED8 00309E18 38 81 00 0C */ addi r4, r1, 0xc
|
|
/* 8030CEDC 00309E1C 7F E5 FB 78 */ mr r5, r31
|
|
/* 8030CEE0 00309E20 4B FC F3 B9 */ bl read__14JSUInputStreamFPvl
|
|
/* 8030CEE4 00309E24 38 00 00 00 */ li r0, 0
|
|
/* 8030CEE8 00309E28 38 81 00 0C */ addi r4, r1, 0xc
|
|
/* 8030CEEC 00309E2C 7C 04 F9 AE */ stbx r0, r4, r31
|
|
/* 8030CEF0 00309E30 7F A3 EB 78 */ mr r3, r29
|
|
/* 8030CEF4 00309E34 4B FF FF 25 */ bl get__13J2DDataManageFPCc
|
|
lbl_8030CEF8:
|
|
/* 8030CEF8 00309E38 39 61 01 20 */ addi r11, r1, 0x120
|
|
/* 8030CEFC 00309E3C 48 05 53 2D */ bl _restgpr_29
|
|
/* 8030CF00 00309E40 80 01 01 24 */ lwz r0, 0x124(r1)
|
|
/* 8030CF04 00309E44 7C 08 03 A6 */ mtlr r0
|
|
/* 8030CF08 00309E48 38 21 01 20 */ addi r1, r1, 0x120
|
|
/* 8030CF0C 00309E4C 4E 80 00 20 */ blr
|
|
|
|
.global getResReference__15J2DResReferenceCFUs
|
|
getResReference__15J2DResReferenceCFUs:
|
|
/* 8030CF10 00309E50 A0 A3 00 00 */ lhz r5, 0(r3)
|
|
/* 8030CF14 00309E54 54 80 04 3E */ clrlwi r0, r4, 0x10
|
|
/* 8030CF18 00309E58 7C 05 00 40 */ cmplw r5, r0
|
|
/* 8030CF1C 00309E5C 40 81 00 0C */ ble lbl_8030CF28
|
|
/* 8030CF20 00309E60 28 00 FF FF */ cmplwi r0, 0xffff
|
|
/* 8030CF24 00309E64 40 82 00 0C */ bne lbl_8030CF30
|
|
lbl_8030CF28:
|
|
/* 8030CF28 00309E68 38 60 00 00 */ li r3, 0
|
|
/* 8030CF2C 00309E6C 4E 80 00 20 */ blr
|
|
lbl_8030CF30:
|
|
/* 8030CF30 00309E70 54 80 0B FC */ rlwinm r0, r4, 1, 0xf, 0x1e
|
|
/* 8030CF34 00309E74 7C 83 02 14 */ add r4, r3, r0
|
|
/* 8030CF38 00309E78 A0 04 00 02 */ lhz r0, 2(r4)
|
|
/* 8030CF3C 00309E7C 7C 63 02 14 */ add r3, r3, r0
|
|
/* 8030CF40 00309E80 4E 80 00 20 */ blr
|
|
|
|
.global getName__15J2DResReferenceCFUs
|
|
getName__15J2DResReferenceCFUs:
|
|
/* 8030CF44 00309E84 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8030CF48 00309E88 7C 08 02 A6 */ mflr r0
|
|
/* 8030CF4C 00309E8C 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8030CF50 00309E90 4B FF FF C1 */ bl getResReference__15J2DResReferenceCFUs
|
|
/* 8030CF54 00309E94 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8030CF58 00309E98 40 82 00 14 */ bne lbl_8030CF6C
|
|
/* 8030CF5C 00309E9C 38 00 00 00 */ li r0, 0
|
|
/* 8030CF60 00309EA0 3C 60 80 43 */ lis r3, lbl_804349C0@ha
|
|
/* 8030CF64 00309EA4 9C 03 49 C0 */ stbu r0, lbl_804349C0@l(r3)
|
|
/* 8030CF68 00309EA8 48 00 01 20 */ b lbl_8030D088
|
|
lbl_8030CF6C:
|
|
/* 8030CF6C 00309EAC 88 03 00 00 */ lbz r0, 0(r3)
|
|
/* 8030CF70 00309EB0 7C 00 07 74 */ extsb r0, r0
|
|
/* 8030CF74 00309EB4 2C 00 00 04 */ cmpwi r0, 4
|
|
/* 8030CF78 00309EB8 41 82 00 5C */ beq lbl_8030CFD4
|
|
/* 8030CF7C 00309EBC 40 80 00 F8 */ bge lbl_8030D074
|
|
/* 8030CF80 00309EC0 2C 00 00 02 */ cmpwi r0, 2
|
|
/* 8030CF84 00309EC4 40 80 00 08 */ bge lbl_8030CF8C
|
|
/* 8030CF88 00309EC8 48 00 00 EC */ b lbl_8030D074
|
|
lbl_8030CF8C:
|
|
/* 8030CF8C 00309ECC 38 C0 00 00 */ li r6, 0
|
|
/* 8030CF90 00309ED0 3C 80 80 43 */ lis r4, lbl_804349C0@ha
|
|
/* 8030CF94 00309ED4 38 A4 49 C0 */ addi r5, r4, lbl_804349C0@l
|
|
/* 8030CF98 00309ED8 48 00 00 18 */ b lbl_8030CFB0
|
|
lbl_8030CF9C:
|
|
/* 8030CF9C 00309EDC 38 06 00 02 */ addi r0, r6, 2
|
|
/* 8030CFA0 00309EE0 7C 03 00 AE */ lbzx r0, r3, r0
|
|
/* 8030CFA4 00309EE4 98 05 00 00 */ stb r0, 0(r5)
|
|
/* 8030CFA8 00309EE8 38 C6 00 01 */ addi r6, r6, 1
|
|
/* 8030CFAC 00309EEC 38 A5 00 01 */ addi r5, r5, 1
|
|
lbl_8030CFB0:
|
|
/* 8030CFB0 00309EF0 88 03 00 01 */ lbz r0, 1(r3)
|
|
/* 8030CFB4 00309EF4 7C 04 07 74 */ extsb r4, r0
|
|
/* 8030CFB8 00309EF8 7C 06 20 00 */ cmpw r6, r4
|
|
/* 8030CFBC 00309EFC 41 80 FF E0 */ blt lbl_8030CF9C
|
|
/* 8030CFC0 00309F00 38 00 00 00 */ li r0, 0
|
|
/* 8030CFC4 00309F04 3C 60 80 43 */ lis r3, lbl_804349C0@ha
|
|
/* 8030CFC8 00309F08 38 63 49 C0 */ addi r3, r3, lbl_804349C0@l
|
|
/* 8030CFCC 00309F0C 7C 03 21 AE */ stbx r0, r3, r4
|
|
/* 8030CFD0 00309F10 48 00 00 B0 */ b lbl_8030D080
|
|
lbl_8030CFD4:
|
|
/* 8030CFD4 00309F14 88 03 00 01 */ lbz r0, 1(r3)
|
|
/* 8030CFD8 00309F18 7C 04 07 74 */ extsb r4, r0
|
|
/* 8030CFDC 00309F1C 38 E4 00 01 */ addi r7, r4, 1
|
|
/* 8030CFE0 00309F20 7C 83 3A 14 */ add r4, r3, r7
|
|
/* 8030CFE4 00309F24 38 07 FF FF */ addi r0, r7, -1
|
|
/* 8030CFE8 00309F28 7C 09 03 A6 */ mtctr r0
|
|
/* 8030CFEC 00309F2C 2C 07 00 02 */ cmpwi r7, 2
|
|
/* 8030CFF0 00309F30 41 80 00 28 */ blt lbl_8030D018
|
|
lbl_8030CFF4:
|
|
/* 8030CFF4 00309F34 88 04 00 00 */ lbz r0, 0(r4)
|
|
/* 8030CFF8 00309F38 7C 00 07 74 */ extsb r0, r0
|
|
/* 8030CFFC 00309F3C 2C 00 00 5C */ cmpwi r0, 0x5c
|
|
/* 8030D000 00309F40 41 82 00 18 */ beq lbl_8030D018
|
|
/* 8030D004 00309F44 2C 00 00 2F */ cmpwi r0, 0x2f
|
|
/* 8030D008 00309F48 41 82 00 10 */ beq lbl_8030D018
|
|
/* 8030D00C 00309F4C 38 E7 FF FF */ addi r7, r7, -1
|
|
/* 8030D010 00309F50 38 84 FF FF */ addi r4, r4, -1
|
|
/* 8030D014 00309F54 42 00 FF E0 */ bdnz lbl_8030CFF4
|
|
lbl_8030D018:
|
|
/* 8030D018 00309F58 39 00 00 00 */ li r8, 0
|
|
/* 8030D01C 00309F5C 3C 80 80 43 */ lis r4, lbl_804349C0@ha
|
|
/* 8030D020 00309F60 38 04 49 C0 */ addi r0, r4, lbl_804349C0@l
|
|
/* 8030D024 00309F64 38 E7 00 01 */ addi r7, r7, 1
|
|
/* 8030D028 00309F68 7C A3 3A 14 */ add r5, r3, r7
|
|
/* 8030D02C 00309F6C 7C 04 03 78 */ mr r4, r0
|
|
/* 8030D030 00309F70 48 00 00 1C */ b lbl_8030D04C
|
|
lbl_8030D034:
|
|
/* 8030D034 00309F74 88 05 00 00 */ lbz r0, 0(r5)
|
|
/* 8030D038 00309F78 98 04 00 00 */ stb r0, 0(r4)
|
|
/* 8030D03C 00309F7C 39 08 00 01 */ addi r8, r8, 1
|
|
/* 8030D040 00309F80 38 84 00 01 */ addi r4, r4, 1
|
|
/* 8030D044 00309F84 38 E7 00 01 */ addi r7, r7, 1
|
|
/* 8030D048 00309F88 38 A5 00 01 */ addi r5, r5, 1
|
|
lbl_8030D04C:
|
|
/* 8030D04C 00309F8C 88 03 00 01 */ lbz r0, 1(r3)
|
|
/* 8030D050 00309F90 7C 06 07 74 */ extsb r6, r0
|
|
/* 8030D054 00309F94 38 06 00 02 */ addi r0, r6, 2
|
|
/* 8030D058 00309F98 7C 07 00 00 */ cmpw r7, r0
|
|
/* 8030D05C 00309F9C 41 80 FF D8 */ blt lbl_8030D034
|
|
/* 8030D060 00309FA0 38 00 00 00 */ li r0, 0
|
|
/* 8030D064 00309FA4 3C 60 80 43 */ lis r3, lbl_804349C0@ha
|
|
/* 8030D068 00309FA8 38 63 49 C0 */ addi r3, r3, lbl_804349C0@l
|
|
/* 8030D06C 00309FAC 7C 03 41 AE */ stbx r0, r3, r8
|
|
/* 8030D070 00309FB0 48 00 00 10 */ b lbl_8030D080
|
|
lbl_8030D074:
|
|
/* 8030D074 00309FB4 38 00 00 00 */ li r0, 0
|
|
/* 8030D078 00309FB8 3C 60 80 43 */ lis r3, lbl_804349C0@ha
|
|
/* 8030D07C 00309FBC 98 03 49 C0 */ stb r0, lbl_804349C0@l(r3)
|
|
lbl_8030D080:
|
|
/* 8030D080 00309FC0 3C 60 80 43 */ lis r3, lbl_804349C0@ha
|
|
/* 8030D084 00309FC4 38 63 49 C0 */ addi r3, r3, lbl_804349C0@l
|
|
lbl_8030D088:
|
|
/* 8030D088 00309FC8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8030D08C 00309FCC 7C 08 03 A6 */ mtlr r0
|
|
/* 8030D090 00309FD0 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8030D094 00309FD4 4E 80 00 20 */ blr
|
|
|