prime/asm/MetroidPrime/Player/CSaveWorld.s

2775 lines
130 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80003640 - 0x803CB1C0
.global sub_80248ddc
sub_80248ddc:
/* 80248DDC 00245D3C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80248DE0 00245D40 7C 08 02 A6 */ mflr r0
/* 80248DE4 00245D44 90 01 00 34 */ stw r0, 0x34(r1)
/* 80248DE8 00245D48 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80248DEC 00245D4C 7C 7F 1B 78 */ mr r31, r3
/* 80248DF0 00245D50 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80248DF4 00245D54 80 04 00 10 */ lwz r0, 0x10(r4)
/* 80248DF8 00245D58 83 C4 00 18 */ lwz r30, 0x18(r4)
/* 80248DFC 00245D5C 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 80248E00 00245D60 7C 9E 02 14 */ add r4, r30, r0
/* 80248E04 00245D64 48 00 00 94 */ b lbl_80248E98
lbl_80248E08:
/* 80248E08 00245D68 80 1E 00 14 */ lwz r0, 0x14(r30)
/* 80248E0C 00245D6C 80 7E 00 1C */ lwz r3, 0x1c(r30)
/* 80248E10 00245D70 54 00 10 3A */ slwi r0, r0, 2
/* 80248E14 00245D74 7C C3 02 14 */ add r6, r3, r0
/* 80248E18 00245D78 90 61 00 1C */ stw r3, 0x1c(r1)
/* 80248E1C 00245D7C 90 C1 00 14 */ stw r6, 0x14(r1)
/* 80248E20 00245D80 90 C1 00 18 */ stw r6, 0x18(r1)
/* 80248E24 00245D84 90 61 00 20 */ stw r3, 0x20(r1)
/* 80248E28 00245D88 48 00 00 10 */ b lbl_80248E38
lbl_80248E2C:
/* 80248E2C 00245D8C 80 61 00 20 */ lwz r3, 0x20(r1)
/* 80248E30 00245D90 38 03 00 04 */ addi r0, r3, 4
/* 80248E34 00245D94 90 01 00 20 */ stw r0, 0x20(r1)
lbl_80248E38:
/* 80248E38 00245D98 80 01 00 20 */ lwz r0, 0x20(r1)
/* 80248E3C 00245D9C 7C 00 30 40 */ cmplw r0, r6
/* 80248E40 00245DA0 41 82 00 14 */ beq lbl_80248E54
/* 80248E44 00245DA4 80 61 00 20 */ lwz r3, 0x20(r1)
/* 80248E48 00245DA8 80 03 00 00 */ lwz r0, 0(r3)
/* 80248E4C 00245DAC 7C 05 00 40 */ cmplw r5, r0
/* 80248E50 00245DB0 40 82 FF DC */ bne lbl_80248E2C
lbl_80248E54:
/* 80248E54 00245DB4 80 01 00 20 */ lwz r0, 0x20(r1)
/* 80248E58 00245DB8 80 61 00 20 */ lwz r3, 0x20(r1)
/* 80248E5C 00245DBC 7C 00 30 40 */ cmplw r0, r6
/* 80248E60 00245DC0 90 61 00 24 */ stw r3, 0x24(r1)
/* 80248E64 00245DC4 41 82 00 30 */ beq lbl_80248E94
/* 80248E68 00245DC8 90 61 00 08 */ stw r3, 8(r1)
/* 80248E6C 00245DCC 38 61 00 10 */ addi r3, r1, 0x10
/* 80248E70 00245DD0 38 81 00 08 */ addi r4, r1, 8
/* 80248E74 00245DD4 80 1E 00 1C */ lwz r0, 0x1c(r30)
/* 80248E78 00245DD8 90 01 00 0C */ stw r0, 0xc(r1)
/* 80248E7C 00245DDC 90 01 00 10 */ stw r0, 0x10(r1)
/* 80248E80 00245DE0 48 00 1F 2D */ bl sub_8024adac
/* 80248E84 00245DE4 80 1E 00 00 */ lwz r0, 0(r30)
/* 80248E88 00245DE8 90 1F 00 00 */ stw r0, 0(r31)
/* 80248E8C 00245DEC 90 7F 00 04 */ stw r3, 4(r31)
/* 80248E90 00245DF0 48 00 00 20 */ b lbl_80248EB0
lbl_80248E94:
/* 80248E94 00245DF4 3B DE 00 4C */ addi r30, r30, 0x4c
lbl_80248E98:
/* 80248E98 00245DF8 7C 1E 20 40 */ cmplw r30, r4
/* 80248E9C 00245DFC 40 82 FF 6C */ bne lbl_80248E08
/* 80248EA0 00245E00 80 02 B8 88 */ lwz r0, lbl_805AD5A8@sda21(r2)
/* 80248EA4 00245E04 90 1F 00 00 */ stw r0, 0(r31)
/* 80248EA8 00245E08 80 0D 97 04 */ lwz r0, lbl_805A82C4@sda21(r13)
/* 80248EAC 00245E0C 90 1F 00 04 */ stw r0, 4(r31)
lbl_80248EB0:
/* 80248EB0 00245E10 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80248EB4 00245E14 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80248EB8 00245E18 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80248EBC 00245E1C 7C 08 03 A6 */ mtlr r0
/* 80248EC0 00245E20 38 21 00 30 */ addi r1, r1, 0x30
/* 80248EC4 00245E24 4E 80 00 20 */ blr
.global GetFrontEndName__16CSaveWorldMemoryCFv
GetFrontEndName__16CSaveWorldMemoryCFv:
/* 80248EC8 00245E28 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80248ECC 00245E2C 7C 08 02 A6 */ mflr r0
/* 80248ED0 00245E30 90 01 00 14 */ stw r0, 0x14(r1)
/* 80248ED4 00245E34 88 03 00 38 */ lbz r0, 0x38(r3)
/* 80248ED8 00245E38 28 00 00 00 */ cmplwi r0, 0
/* 80248EDC 00245E3C 41 82 00 1C */ beq lbl_80248EF8
/* 80248EE0 00245E40 80 63 00 34 */ lwz r3, 0x34(r3)
/* 80248EE4 00245E44 28 03 00 00 */ cmplwi r3, 0
/* 80248EE8 00245E48 41 82 00 10 */ beq lbl_80248EF8
/* 80248EEC 00245E4C 38 80 00 00 */ li r4, 0
/* 80248EF0 00245E50 48 10 D8 0D */ bl GetString__12CStringTableCFi
/* 80248EF4 00245E54 48 00 00 08 */ b lbl_80248EFC
lbl_80248EF8:
/* 80248EF8 00245E58 38 60 00 00 */ li r3, 0
lbl_80248EFC:
/* 80248EFC 00245E5C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80248F00 00245E60 7C 08 03 A6 */ mtlr r0
/* 80248F04 00245E64 38 21 00 10 */ addi r1, r1, 0x10
/* 80248F08 00245E68 4E 80 00 20 */ blr
.global GetSaveWorldMemory__14CMemoryCardSysCFi
GetSaveWorldMemory__14CMemoryCardSysCFi:
/* 80248F0C 00245E6C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80248F10 00245E70 7C 08 02 A6 */ mflr r0
/* 80248F14 00245E74 90 01 00 44 */ stw r0, 0x44(r1)
/* 80248F18 00245E78 38 A1 00 24 */ addi r5, r1, 0x24
/* 80248F1C 00245E7C 89 21 00 14 */ lbz r9, 0x14(r1)
/* 80248F20 00245E80 38 C1 00 08 */ addi r6, r1, 8
/* 80248F24 00245E84 80 03 00 10 */ lwz r0, 0x10(r3)
/* 80248F28 00245E88 38 E1 00 0C */ addi r7, r1, 0xc
/* 80248F2C 00245E8C 81 03 00 18 */ lwz r8, 0x18(r3)
/* 80248F30 00245E90 38 61 00 1C */ addi r3, r1, 0x1c
/* 80248F34 00245E94 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 80248F38 00245E98 90 81 00 08 */ stw r4, 8(r1)
/* 80248F3C 00245E9C 38 81 00 20 */ addi r4, r1, 0x20
/* 80248F40 00245EA0 99 21 00 10 */ stb r9, 0x10(r1)
/* 80248F44 00245EA4 7C 08 02 14 */ add r0, r8, r0
/* 80248F48 00245EA8 90 01 00 30 */ stw r0, 0x30(r1)
/* 80248F4C 00245EAC 90 01 00 2C */ stw r0, 0x2c(r1)
/* 80248F50 00245EB0 91 01 00 28 */ stw r8, 0x28(r1)
/* 80248F54 00245EB4 99 21 00 0C */ stb r9, 0xc(r1)
/* 80248F58 00245EB8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80248F5C 00245EBC 91 01 00 20 */ stw r8, 0x20(r1)
/* 80248F60 00245EC0 48 00 1F 69 */ bl sub_8024aec8
/* 80248F64 00245EC4 80 A1 00 1C */ lwz r5, 0x1c(r1)
/* 80248F68 00245EC8 38 80 00 00 */ li r4, 0
/* 80248F6C 00245ECC 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 80248F70 00245ED0 90 A1 00 18 */ stw r5, 0x18(r1)
/* 80248F74 00245ED4 7C 05 00 40 */ cmplw r5, r0
/* 80248F78 00245ED8 41 82 00 18 */ beq lbl_80248F90
/* 80248F7C 00245EDC 80 61 00 08 */ lwz r3, 8(r1)
/* 80248F80 00245EE0 80 05 00 00 */ lwz r0, 0(r5)
/* 80248F84 00245EE4 7C 03 00 40 */ cmplw r3, r0
/* 80248F88 00245EE8 41 80 00 08 */ blt lbl_80248F90
/* 80248F8C 00245EEC 38 80 00 01 */ li r4, 1
lbl_80248F90:
/* 80248F90 00245EF0 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 80248F94 00245EF4 38 61 00 2C */ addi r3, r1, 0x2c
/* 80248F98 00245EF8 41 82 00 08 */ beq lbl_80248FA0
/* 80248F9C 00245EFC 38 61 00 18 */ addi r3, r1, 0x18
lbl_80248FA0:
/* 80248FA0 00245F00 80 63 00 00 */ lwz r3, 0(r3)
/* 80248FA4 00245F04 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80248FA8 00245F08 38 63 00 04 */ addi r3, r3, 4
/* 80248FAC 00245F0C 7C 08 03 A6 */ mtlr r0
/* 80248FB0 00245F10 38 21 00 40 */ addi r1, r1, 0x40
/* 80248FB4 00245F14 4E 80 00 20 */ blr
.global HasSaveWorldMemory__15CMemoryCardSysFi
HasSaveWorldMemory__15CMemoryCardSysFi:
/* 80248FB8 00245F18 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80248FBC 00245F1C 7C 08 02 A6 */ mflr r0
/* 80248FC0 00245F20 90 01 00 44 */ stw r0, 0x44(r1)
/* 80248FC4 00245F24 38 A1 00 24 */ addi r5, r1, 0x24
/* 80248FC8 00245F28 89 21 00 14 */ lbz r9, 0x14(r1)
/* 80248FCC 00245F2C 38 C1 00 08 */ addi r6, r1, 8
/* 80248FD0 00245F30 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80248FD4 00245F34 7C 7F 1B 78 */ mr r31, r3
/* 80248FD8 00245F38 38 E1 00 0C */ addi r7, r1, 0xc
/* 80248FDC 00245F3C 80 03 00 10 */ lwz r0, 0x10(r3)
/* 80248FE0 00245F40 38 61 00 1C */ addi r3, r1, 0x1c
/* 80248FE4 00245F44 81 1F 00 18 */ lwz r8, 0x18(r31)
/* 80248FE8 00245F48 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 80248FEC 00245F4C 90 81 00 08 */ stw r4, 8(r1)
/* 80248FF0 00245F50 38 81 00 20 */ addi r4, r1, 0x20
/* 80248FF4 00245F54 99 21 00 10 */ stb r9, 0x10(r1)
/* 80248FF8 00245F58 7C 08 02 14 */ add r0, r8, r0
/* 80248FFC 00245F5C 90 01 00 30 */ stw r0, 0x30(r1)
/* 80249000 00245F60 90 01 00 2C */ stw r0, 0x2c(r1)
/* 80249004 00245F64 91 01 00 28 */ stw r8, 0x28(r1)
/* 80249008 00245F68 99 21 00 0C */ stb r9, 0xc(r1)
/* 8024900C 00245F6C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80249010 00245F70 91 01 00 20 */ stw r8, 0x20(r1)
/* 80249014 00245F74 48 00 1E B5 */ bl sub_8024aec8
/* 80249018 00245F78 80 A1 00 1C */ lwz r5, 0x1c(r1)
/* 8024901C 00245F7C 38 80 00 00 */ li r4, 0
/* 80249020 00245F80 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 80249024 00245F84 90 A1 00 18 */ stw r5, 0x18(r1)
/* 80249028 00245F88 7C 05 00 40 */ cmplw r5, r0
/* 8024902C 00245F8C 41 82 00 18 */ beq lbl_80249044
/* 80249030 00245F90 80 61 00 08 */ lwz r3, 8(r1)
/* 80249034 00245F94 80 05 00 00 */ lwz r0, 0(r5)
/* 80249038 00245F98 7C 03 00 40 */ cmplw r3, r0
/* 8024903C 00245F9C 41 80 00 08 */ blt lbl_80249044
/* 80249040 00245FA0 38 80 00 01 */ li r4, 1
lbl_80249044:
/* 80249044 00245FA4 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 80249048 00245FA8 38 81 00 2C */ addi r4, r1, 0x2c
/* 8024904C 00245FAC 41 82 00 08 */ beq lbl_80249054
/* 80249050 00245FB0 38 81 00 18 */ addi r4, r1, 0x18
lbl_80249054:
/* 80249054 00245FB4 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 80249058 00245FB8 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 8024905C 00245FBC 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 80249060 00245FC0 80 84 00 00 */ lwz r4, 0(r4)
/* 80249064 00245FC4 7C 03 02 14 */ add r0, r3, r0
/* 80249068 00245FC8 7C 64 00 50 */ subf r3, r4, r0
/* 8024906C 00245FCC 7C 00 20 50 */ subf r0, r0, r4
/* 80249070 00245FD0 7C 60 03 78 */ or r0, r3, r0
/* 80249074 00245FD4 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80249078 00245FD8 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 8024907C 00245FDC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80249080 00245FE0 7C 08 03 A6 */ mtlr r0
/* 80249084 00245FE4 38 21 00 40 */ addi r1, r1, 0x40
/* 80249088 00245FE8 4E 80 00 20 */ blr
.global InitializePump__14CMemoryCardSysFv
InitializePump__14CMemoryCardSysFv:
/* 8024908C 00245FEC 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 80249090 00245FF0 7C 08 02 A6 */ mflr r0
/* 80249094 00245FF4 90 01 00 84 */ stw r0, 0x84(r1)
/* 80249098 00245FF8 BF 01 00 60 */ stmw r24, 0x60(r1)
/* 8024909C 00245FFC 7C 78 1B 78 */ mr r24, r3
/* 802490A0 00246000 83 43 00 1C */ lwz r26, 0x1c(r3)
/* 802490A4 00246004 28 1A 00 00 */ cmplwi r26, 0
/* 802490A8 00246008 40 82 00 E4 */ bne lbl_8024918C
/* 802490AC 0024600C 83 58 00 18 */ lwz r26, 0x18(r24)
/* 802490B0 00246010 48 00 00 74 */ b lbl_80249124
lbl_802490B4:
/* 802490B4 00246014 88 1A 00 3C */ lbz r0, 0x3c(r26)
/* 802490B8 00246018 28 00 00 00 */ cmplwi r0, 0
/* 802490BC 0024601C 41 82 00 64 */ beq lbl_80249120
/* 802490C0 00246020 3B 3A 00 30 */ addi r25, r26, 0x30
/* 802490C4 00246024 80 1A 00 38 */ lwz r0, 0x38(r26)
/* 802490C8 00246028 28 00 00 00 */ cmplwi r0, 0
/* 802490CC 0024602C 41 82 00 0C */ beq lbl_802490D8
/* 802490D0 00246030 38 60 00 01 */ li r3, 1
/* 802490D4 00246034 48 00 00 3C */ b lbl_80249110
lbl_802490D8:
/* 802490D8 00246038 88 19 00 04 */ lbz r0, 4(r25)
/* 802490DC 0024603C 28 00 00 00 */ cmplwi r0, 0
/* 802490E0 00246040 41 82 00 2C */ beq lbl_8024910C
/* 802490E4 00246044 80 79 00 00 */ lwz r3, 0(r25)
/* 802490E8 00246048 80 03 00 10 */ lwz r0, 0x10(r3)
/* 802490EC 0024604C 28 00 00 00 */ cmplwi r0, 0
/* 802490F0 00246050 41 82 00 1C */ beq lbl_8024910C
/* 802490F4 00246054 7F 23 CB 78 */ mr r3, r25
/* 802490F8 00246058 48 0F 7D 15 */ bl GetObj__6CTokenFv
/* 802490FC 0024605C 80 03 00 04 */ lwz r0, 4(r3)
/* 80249100 00246060 38 60 00 01 */ li r3, 1
/* 80249104 00246064 90 19 00 08 */ stw r0, 8(r25)
/* 80249108 00246068 48 00 00 08 */ b lbl_80249110
lbl_8024910C:
/* 8024910C 0024606C 38 60 00 00 */ li r3, 0
lbl_80249110:
/* 80249110 00246070 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80249114 00246074 40 82 00 0C */ bne lbl_80249120
/* 80249118 00246078 38 60 00 00 */ li r3, 0
/* 8024911C 0024607C 48 00 04 34 */ b lbl_80249550
lbl_80249120:
/* 80249120 00246080 3B 5A 00 4C */ addi r26, r26, 0x4c
lbl_80249124:
/* 80249124 00246084 80 18 00 10 */ lwz r0, 0x10(r24)
/* 80249128 00246088 80 78 00 18 */ lwz r3, 0x18(r24)
/* 8024912C 0024608C 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 80249130 00246090 7C 03 02 14 */ add r0, r3, r0
/* 80249134 00246094 7C 1A 00 40 */ cmplw r26, r0
/* 80249138 00246098 40 82 FF 7C */ bne lbl_802490B4
/* 8024913C 0024609C 80 18 00 08 */ lwz r0, 8(r24)
/* 80249140 002460A0 28 00 00 00 */ cmplwi r0, 0
/* 80249144 002460A4 41 82 00 0C */ beq lbl_80249150
/* 80249148 002460A8 38 60 00 01 */ li r3, 1
/* 8024914C 002460AC 48 00 04 04 */ b lbl_80249550
lbl_80249150:
/* 80249150 002460B0 88 18 00 04 */ lbz r0, 4(r24)
/* 80249154 002460B4 28 00 00 00 */ cmplwi r0, 0
/* 80249158 002460B8 41 82 00 2C */ beq lbl_80249184
/* 8024915C 002460BC 80 78 00 00 */ lwz r3, 0(r24)
/* 80249160 002460C0 80 03 00 10 */ lwz r0, 0x10(r3)
/* 80249164 002460C4 28 00 00 00 */ cmplwi r0, 0
/* 80249168 002460C8 41 82 00 1C */ beq lbl_80249184
/* 8024916C 002460CC 7F 03 C3 78 */ mr r3, r24
/* 80249170 002460D0 48 0F 7C 9D */ bl GetObj__6CTokenFv
/* 80249174 002460D4 80 03 00 04 */ lwz r0, 4(r3)
/* 80249178 002460D8 38 60 00 01 */ li r3, 1
/* 8024917C 002460DC 90 18 00 08 */ stw r0, 8(r24)
/* 80249180 002460E0 48 00 03 D0 */ b lbl_80249550
lbl_80249184:
/* 80249184 002460E4 38 60 00 00 */ li r3, 0
/* 80249188 002460E8 48 00 03 C8 */ b lbl_80249550
lbl_8024918C:
/* 8024918C 002460EC 83 BA 00 0C */ lwz r29, 0xc(r26)
/* 80249190 002460F0 3B 78 00 34 */ addi r27, r24, 0x34
/* 80249194 002460F4 3B 20 00 01 */ li r25, 1
/* 80249198 002460F8 48 00 03 48 */ b lbl_802494E0
lbl_8024919C:
/* 8024919C 002460FC 7F A3 EB 78 */ mr r3, r29
/* 802491A0 00246100 48 00 06 5D */ bl InitializePump__20CMemorySomethingElseFv
/* 802491A4 00246104 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802491A8 00246108 41 82 03 30 */ beq lbl_802494D8
/* 802491AC 0024610C 80 1D 00 38 */ lwz r0, 0x38(r29)
/* 802491B0 00246110 28 00 00 00 */ cmplwi r0, 0
/* 802491B4 00246114 41 82 03 28 */ beq lbl_802494DC
/* 802491B8 00246118 80 9D 00 00 */ lwz r4, 0(r29)
/* 802491BC 0024611C 7F 03 C3 78 */ mr r3, r24
/* 802491C0 00246120 4B FF FD 4D */ bl GetSaveWorldMemory__14CMemoryCardSysCFi
/* 802491C4 00246124 7C 7F 1B 78 */ mr r31, r3
/* 802491C8 00246128 80 63 00 04 */ lwz r3, 4(r3)
/* 802491CC 0024612C 3C 03 00 01 */ addis r0, r3, 1
/* 802491D0 00246130 28 00 FF FF */ cmplwi r0, 0xffff
/* 802491D4 00246134 40 82 00 0C */ bne lbl_802491E0
/* 802491D8 00246138 80 1D 00 08 */ lwz r0, 8(r29)
/* 802491DC 0024613C 90 1F 00 04 */ stw r0, 4(r31)
lbl_802491E0:
/* 802491E0 00246140 80 7F 00 00 */ lwz r3, 0(r31)
/* 802491E4 00246144 3C 03 00 01 */ addis r0, r3, 1
/* 802491E8 00246148 28 00 FF FF */ cmplwi r0, 0xffff
/* 802491EC 0024614C 40 82 00 0C */ bne lbl_802491F8
/* 802491F0 00246150 80 1D 00 04 */ lwz r0, 4(r29)
/* 802491F4 00246154 90 1F 00 00 */ stw r0, 0(r31)
lbl_802491F8:
/* 802491F8 00246158 38 7F 00 0C */ addi r3, r31, 0xc
/* 802491FC 0024615C 38 9D 00 0C */ addi r4, r29, 0xc
/* 80249200 00246160 4B E1 A4 FD */ bl "clear__Q24rstl37vector<Ui,Q24rstl17rmemory_allocator>Fv"
/* 80249204 00246164 38 7F 00 1C */ addi r3, r31, 0x1c
/* 80249208 00246168 38 9D 00 1C */ addi r4, r29, 0x1c
/* 8024920C 0024616C 4B FE AF 61 */ bl sub_8023416c
/* 80249210 00246170 80 9D 00 38 */ lwz r4, 0x38(r29)
/* 80249214 00246174 38 78 00 20 */ addi r3, r24, 0x20
/* 80249218 00246178 83 C4 00 08 */ lwz r30, 8(r4)
/* 8024921C 0024617C 80 1E 00 00 */ lwz r0, 0(r30)
/* 80249220 00246180 90 1F 00 08 */ stw r0, 8(r31)
/* 80249224 00246184 80 98 00 24 */ lwz r4, 0x24(r24)
/* 80249228 00246188 80 1E 00 48 */ lwz r0, 0x48(r30)
/* 8024922C 0024618C 7C 84 02 14 */ add r4, r4, r0
/* 80249230 00246190 4B DB F8 1D */ bl "reserve__Q24rstl55vector<Q24rstl11pair<Ui,Ui>,Q24rstl17rmemory_allocator>Fi"
/* 80249234 00246194 83 9E 00 50 */ lwz r28, 0x50(r30)
/* 80249238 00246198 48 00 00 F0 */ b lbl_80249328
lbl_8024923C:
/* 8024923C 0024619C 80 F8 00 24 */ lwz r7, 0x24(r24)
/* 80249240 002461A0 80 78 00 2C */ lwz r3, 0x2c(r24)
/* 80249244 002461A4 54 E0 18 38 */ slwi r0, r7, 3
/* 80249248 002461A8 7C C3 02 14 */ add r6, r3, r0
/* 8024924C 002461AC 90 61 00 30 */ stw r3, 0x30(r1)
/* 80249250 002461B0 90 C1 00 24 */ stw r6, 0x24(r1)
/* 80249254 002461B4 90 61 00 34 */ stw r3, 0x34(r1)
/* 80249258 002461B8 90 C1 00 28 */ stw r6, 0x28(r1)
/* 8024925C 002461BC 90 C1 00 2C */ stw r6, 0x2c(r1)
/* 80249260 002461C0 48 00 00 10 */ b lbl_80249270
lbl_80249264:
/* 80249264 002461C4 80 61 00 34 */ lwz r3, 0x34(r1)
/* 80249268 002461C8 38 03 00 08 */ addi r0, r3, 8
/* 8024926C 002461CC 90 01 00 34 */ stw r0, 0x34(r1)
lbl_80249270:
/* 80249270 002461D0 80 A1 00 34 */ lwz r5, 0x34(r1)
/* 80249274 002461D4 7C 05 30 40 */ cmplw r5, r6
/* 80249278 002461D8 41 82 00 34 */ beq lbl_802492AC
/* 8024927C 002461DC 80 65 00 00 */ lwz r3, 0(r5)
/* 80249280 002461E0 38 80 00 00 */ li r4, 0
/* 80249284 002461E4 80 1C 00 00 */ lwz r0, 0(r28)
/* 80249288 002461E8 7C 03 00 40 */ cmplw r3, r0
/* 8024928C 002461EC 40 82 00 18 */ bne lbl_802492A4
/* 80249290 002461F0 80 65 00 04 */ lwz r3, 4(r5)
/* 80249294 002461F4 80 1C 00 04 */ lwz r0, 4(r28)
/* 80249298 002461F8 7C 03 00 40 */ cmplw r3, r0
/* 8024929C 002461FC 40 82 00 08 */ bne lbl_802492A4
/* 802492A0 00246200 38 80 00 01 */ li r4, 1
lbl_802492A4:
/* 802492A4 00246204 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 802492A8 00246208 41 82 FF BC */ beq lbl_80249264
lbl_802492AC:
/* 802492AC 0024620C 80 61 00 34 */ lwz r3, 0x34(r1)
/* 802492B0 00246210 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802492B4 00246214 7C 03 00 40 */ cmplw r3, r0
/* 802492B8 00246218 40 82 00 6C */ bne lbl_80249324
/* 802492BC 0024621C 80 18 00 28 */ lwz r0, 0x28(r24)
/* 802492C0 00246220 7C 07 00 00 */ cmpw r7, r0
/* 802492C4 00246224 41 80 00 1C */ blt lbl_802492E0
/* 802492C8 00246228 2C 00 00 00 */ cmpwi r0, 0
/* 802492CC 0024622C 38 78 00 20 */ addi r3, r24, 0x20
/* 802492D0 00246230 38 80 00 04 */ li r4, 4
/* 802492D4 00246234 41 82 00 08 */ beq lbl_802492DC
/* 802492D8 00246238 54 04 08 3C */ slwi r4, r0, 1
lbl_802492DC:
/* 802492DC 0024623C 4B DB F7 71 */ bl "reserve__Q24rstl55vector<Q24rstl11pair<Ui,Ui>,Q24rstl17rmemory_allocator>Fi"
lbl_802492E0:
/* 802492E0 00246240 80 18 00 24 */ lwz r0, 0x24(r24)
/* 802492E4 00246244 80 78 00 2C */ lwz r3, 0x2c(r24)
/* 802492E8 00246248 54 00 18 38 */ slwi r0, r0, 3
/* 802492EC 0024624C 7C 63 02 15 */ add. r3, r3, r0
/* 802492F0 00246250 41 82 00 14 */ beq lbl_80249304
/* 802492F4 00246254 80 1C 00 00 */ lwz r0, 0(r28)
/* 802492F8 00246258 90 03 00 00 */ stw r0, 0(r3)
/* 802492FC 0024625C 80 1C 00 04 */ lwz r0, 4(r28)
/* 80249300 00246260 90 03 00 04 */ stw r0, 4(r3)
lbl_80249304:
/* 80249304 00246264 80 78 00 24 */ lwz r3, 0x24(r24)
/* 80249308 00246268 38 03 00 01 */ addi r0, r3, 1
/* 8024930C 0024626C 90 18 00 24 */ stw r0, 0x24(r24)
/* 80249310 00246270 80 1C 00 04 */ lwz r0, 4(r28)
/* 80249314 00246274 54 04 10 3A */ slwi r4, r0, 2
/* 80249318 00246278 7C 7B 20 2E */ lwzx r3, r27, r4
/* 8024931C 0024627C 38 03 00 01 */ addi r0, r3, 1
/* 80249320 00246280 7C 1B 21 2E */ stwx r0, r27, r4
lbl_80249324:
/* 80249324 00246284 3B 9C 00 08 */ addi r28, r28, 8
lbl_80249328:
/* 80249328 00246288 80 1E 00 48 */ lwz r0, 0x48(r30)
/* 8024932C 0024628C 80 7E 00 50 */ lwz r3, 0x50(r30)
/* 80249330 00246290 54 00 18 38 */ slwi r0, r0, 3
/* 80249334 00246294 7C 03 02 14 */ add r0, r3, r0
/* 80249338 00246298 7C 1C 00 40 */ cmplw r28, r0
/* 8024933C 0024629C 40 82 FF 00 */ bne lbl_8024923C
/* 80249340 002462A0 88 1F 00 44 */ lbz r0, 0x44(r31)
/* 80249344 002462A4 80 9D 00 38 */ lwz r4, 0x38(r29)
/* 80249348 002462A8 28 00 00 00 */ cmplwi r0, 0
/* 8024934C 002462AC 40 82 00 1C */ bne lbl_80249368
/* 80249350 002462B0 34 7F 00 3C */ addic. r3, r31, 0x3c
/* 80249354 002462B4 41 82 00 08 */ beq lbl_8024935C
/* 80249358 002462B8 48 0F 7B 51 */ bl __ct__6CTokenFRC6CToken
lbl_8024935C:
/* 8024935C 002462BC 38 00 00 01 */ li r0, 1
/* 80249360 002462C0 98 1F 00 44 */ stb r0, 0x44(r31)
/* 80249364 002462C4 48 00 00 0C */ b lbl_80249370
lbl_80249368:
/* 80249368 002462C8 38 7F 00 3C */ addi r3, r31, 0x3c
/* 8024936C 002462CC 48 0F 79 59 */ bl __as__6CTokenFRC6CToken
lbl_80249370:
/* 80249370 002462D0 38 61 00 40 */ addi r3, r1, 0x40
/* 80249374 002462D4 38 1D 00 34 */ addi r0, r29, 0x34
/* 80249378 002462D8 38 80 00 00 */ li r4, 0
/* 8024937C 002462DC 7C 03 00 40 */ cmplw r3, r0
/* 80249380 002462E0 98 81 00 40 */ stb r4, 0x40(r1)
/* 80249384 002462E4 90 81 00 44 */ stw r4, 0x44(r1)
/* 80249388 002462E8 41 82 00 4C */ beq lbl_802493D4
/* 8024938C 002462EC 88 1D 00 34 */ lbz r0, 0x34(r29)
/* 80249390 002462F0 28 00 00 00 */ cmplwi r0, 0
/* 80249394 002462F4 41 82 00 28 */ beq lbl_802493BC
/* 80249398 002462F8 83 9D 00 38 */ lwz r28, 0x38(r29)
/* 8024939C 002462FC 28 1C 00 00 */ cmplwi r28, 0
/* 802493A0 00246300 41 82 00 1C */ beq lbl_802493BC
/* 802493A4 00246304 41 82 00 10 */ beq lbl_802493B4
/* 802493A8 00246308 7F 83 E3 78 */ mr r3, r28
/* 802493AC 0024630C 38 80 00 00 */ li r4, 0
/* 802493B0 00246310 48 0F 7A 91 */ bl __dt__6CTokenFv
lbl_802493B4:
/* 802493B4 00246314 7F 83 E3 78 */ mr r3, r28
/* 802493B8 00246318 48 0C C5 79 */ bl Free__7CMemoryFPCv
lbl_802493BC:
/* 802493BC 0024631C 88 61 00 40 */ lbz r3, 0x40(r1)
/* 802493C0 00246320 38 00 00 00 */ li r0, 0
/* 802493C4 00246324 98 7D 00 34 */ stb r3, 0x34(r29)
/* 802493C8 00246328 80 61 00 44 */ lwz r3, 0x44(r1)
/* 802493CC 0024632C 90 7D 00 38 */ stw r3, 0x38(r29)
/* 802493D0 00246330 98 01 00 40 */ stb r0, 0x40(r1)
lbl_802493D4:
/* 802493D4 00246334 88 01 00 40 */ lbz r0, 0x40(r1)
/* 802493D8 00246338 28 00 00 00 */ cmplwi r0, 0
/* 802493DC 0024633C 41 82 00 28 */ beq lbl_80249404
/* 802493E0 00246340 83 81 00 44 */ lwz r28, 0x44(r1)
/* 802493E4 00246344 28 1C 00 00 */ cmplwi r28, 0
/* 802493E8 00246348 41 82 00 1C */ beq lbl_80249404
/* 802493EC 0024634C 41 82 00 10 */ beq lbl_802493FC
/* 802493F0 00246350 7F 83 E3 78 */ mr r3, r28
/* 802493F4 00246354 38 80 00 00 */ li r4, 0
/* 802493F8 00246358 48 0F 7A 49 */ bl __dt__6CTokenFv
lbl_802493FC:
/* 802493FC 0024635C 7F 83 E3 78 */ mr r3, r28
/* 80249400 00246360 48 0C C5 31 */ bl Free__7CMemoryFPCv
lbl_80249404:
/* 80249404 00246364 80 BF 00 00 */ lwz r5, 0(r31)
/* 80249408 00246368 3C 60 53 54 */ lis r3, 0x53545247@ha
/* 8024940C 0024636C 38 03 52 47 */ addi r0, r3, 0x53545247@l
/* 80249410 00246370 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13)
/* 80249414 00246374 90 01 00 48 */ stw r0, 0x48(r1)
/* 80249418 00246378 38 81 00 48 */ addi r4, r1, 0x48
/* 8024941C 0024637C 90 A1 00 4C */ stw r5, 0x4c(r1)
/* 80249420 00246380 81 83 00 00 */ lwz r12, 0(r3)
/* 80249424 00246384 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 80249428 00246388 7D 89 03 A6 */ mtctr r12
/* 8024942C 0024638C 4E 80 04 21 */ bctrl
/* 80249430 00246390 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80249434 00246394 41 82 00 A8 */ beq lbl_802494DC
/* 80249438 00246398 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8024943C 0024639C 38 61 00 38 */ addi r3, r1, 0x38
/* 80249440 002463A0 38 A1 00 48 */ addi r5, r1, 0x48
/* 80249444 002463A4 81 84 00 00 */ lwz r12, 0(r4)
/* 80249448 002463A8 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8024944C 002463AC 7D 89 03 A6 */ mtctr r12
/* 80249450 002463B0 4E 80 04 21 */ bctrl
/* 80249454 002463B4 38 61 00 50 */ addi r3, r1, 0x50
/* 80249458 002463B8 38 81 00 38 */ addi r4, r1, 0x38
/* 8024945C 002463BC 48 0F 7A 4D */ bl __ct__6CTokenFRC6CToken
/* 80249460 002463C0 38 00 00 00 */ li r0, 0
/* 80249464 002463C4 90 01 00 58 */ stw r0, 0x58(r1)
/* 80249468 002463C8 88 1F 00 38 */ lbz r0, 0x38(r31)
/* 8024946C 002463CC 28 00 00 00 */ cmplwi r0, 0
/* 80249470 002463D0 40 82 00 2C */ bne lbl_8024949C
/* 80249474 002463D4 37 9F 00 2C */ addic. r28, r31, 0x2c
/* 80249478 002463D8 41 82 00 18 */ beq lbl_80249490
/* 8024947C 002463DC 7F 83 E3 78 */ mr r3, r28
/* 80249480 002463E0 38 81 00 50 */ addi r4, r1, 0x50
/* 80249484 002463E4 48 0F 7A 25 */ bl __ct__6CTokenFRC6CToken
/* 80249488 002463E8 80 01 00 58 */ lwz r0, 0x58(r1)
/* 8024948C 002463EC 90 1C 00 08 */ stw r0, 8(r28)
lbl_80249490:
/* 80249490 002463F0 38 00 00 01 */ li r0, 1
/* 80249494 002463F4 98 1F 00 38 */ stb r0, 0x38(r31)
/* 80249498 002463F8 48 00 00 1C */ b lbl_802494B4
lbl_8024949C:
/* 8024949C 002463FC 3B 9F 00 2C */ addi r28, r31, 0x2c
/* 802494A0 00246400 38 81 00 50 */ addi r4, r1, 0x50
/* 802494A4 00246404 7F 83 E3 78 */ mr r3, r28
/* 802494A8 00246408 48 0F 78 1D */ bl __as__6CTokenFRC6CToken
/* 802494AC 0024640C 80 01 00 58 */ lwz r0, 0x58(r1)
/* 802494B0 00246410 90 1C 00 08 */ stw r0, 8(r28)
lbl_802494B4:
/* 802494B4 00246414 38 61 00 50 */ addi r3, r1, 0x50
/* 802494B8 00246418 38 80 00 00 */ li r4, 0
/* 802494BC 0024641C 48 0F 79 85 */ bl __dt__6CTokenFv
/* 802494C0 00246420 38 61 00 38 */ addi r3, r1, 0x38
/* 802494C4 00246424 38 80 FF FF */ li r4, -1
/* 802494C8 00246428 48 0F 79 79 */ bl __dt__6CTokenFv
/* 802494CC 0024642C 38 7F 00 2C */ addi r3, r31, 0x2c
/* 802494D0 00246430 48 0F 78 B5 */ bl Lock__6CTokenFv
/* 802494D4 00246434 48 00 00 08 */ b lbl_802494DC
lbl_802494D8:
/* 802494D8 00246438 3B 20 00 00 */ li r25, 0
lbl_802494DC:
/* 802494DC 0024643C 3B BD 00 3C */ addi r29, r29, 0x3c
lbl_802494E0:
/* 802494E0 00246440 80 1A 00 04 */ lwz r0, 4(r26)
/* 802494E4 00246444 80 7A 00 0C */ lwz r3, 0xc(r26)
/* 802494E8 00246448 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 802494EC 0024644C 7C 03 02 14 */ add r0, r3, r0
/* 802494F0 00246450 7C 1D 00 40 */ cmplw r29, r0
/* 802494F4 00246454 40 82 FC A8 */ bne lbl_8024919C
/* 802494F8 00246458 57 20 06 3F */ clrlwi. r0, r25, 0x18
/* 802494FC 0024645C 41 82 00 50 */ beq lbl_8024954C
/* 80249500 00246460 38 78 00 1C */ addi r3, r24, 0x1c
/* 80249504 00246464 38 80 00 00 */ li r4, 0
/* 80249508 00246468 48 00 00 5D */ bl sub_80249564
/* 8024950C 0024646C 88 E1 00 10 */ lbz r7, 0x10(r1)
/* 80249510 00246470 38 61 00 14 */ addi r3, r1, 0x14
/* 80249514 00246474 38 81 00 1C */ addi r4, r1, 0x1c
/* 80249518 00246478 38 A1 00 08 */ addi r5, r1, 8
/* 8024951C 0024647C 98 E1 00 08 */ stb r7, 8(r1)
/* 80249520 00246480 80 18 00 24 */ lwz r0, 0x24(r24)
/* 80249524 00246484 80 D8 00 2C */ lwz r6, 0x2c(r24)
/* 80249528 00246488 54 00 18 38 */ slwi r0, r0, 3
/* 8024952C 0024648C 98 E1 00 0C */ stb r7, 0xc(r1)
/* 80249530 00246490 7C C6 02 14 */ add r6, r6, r0
/* 80249534 00246494 90 C1 00 1C */ stw r6, 0x1c(r1)
/* 80249538 00246498 80 18 00 2C */ lwz r0, 0x2c(r24)
/* 8024953C 0024649C 90 C1 00 20 */ stw r6, 0x20(r1)
/* 80249540 002464A0 90 01 00 18 */ stw r0, 0x18(r1)
/* 80249544 002464A4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80249548 002464A8 4B FC 64 59 */ bl sub_8020f9a0
lbl_8024954C:
/* 8024954C 002464AC 38 60 00 00 */ li r3, 0
lbl_80249550:
/* 80249550 002464B0 BB 01 00 60 */ lmw r24, 0x60(r1)
/* 80249554 002464B4 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80249558 002464B8 7C 08 03 A6 */ mtlr r0
/* 8024955C 002464BC 38 21 00 80 */ addi r1, r1, 0x80
/* 80249560 002464C0 4E 80 00 20 */ blr
.global sub_80249564
sub_80249564:
/* 80249564 002464C4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80249568 002464C8 7C 08 02 A6 */ mflr r0
/* 8024956C 002464CC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80249570 002464D0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80249574 002464D4 7C 9F 23 78 */ mr r31, r4
/* 80249578 002464D8 38 80 00 01 */ li r4, 1
/* 8024957C 002464DC 93 C1 00 08 */ stw r30, 8(r1)
/* 80249580 002464E0 7C 7E 1B 78 */ mr r30, r3
/* 80249584 002464E4 80 63 00 00 */ lwz r3, 0(r3)
/* 80249588 002464E8 48 00 00 25 */ bl sub_802495ac
/* 8024958C 002464EC 93 FE 00 00 */ stw r31, 0(r30)
/* 80249590 002464F0 7F C3 F3 78 */ mr r3, r30
/* 80249594 002464F4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80249598 002464F8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024959C 002464FC 83 C1 00 08 */ lwz r30, 8(r1)
/* 802495A0 00246500 7C 08 03 A6 */ mtlr r0
/* 802495A4 00246504 38 21 00 10 */ addi r1, r1, 0x10
/* 802495A8 00246508 4E 80 00 20 */ blr
.global sub_802495ac
sub_802495ac:
/* 802495AC 0024650C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802495B0 00246510 7C 08 02 A6 */ mflr r0
/* 802495B4 00246514 90 01 00 24 */ stw r0, 0x24(r1)
/* 802495B8 00246518 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802495BC 0024651C 7C 9F 23 78 */ mr r31, r4
/* 802495C0 00246520 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802495C4 00246524 7C 7E 1B 79 */ or. r30, r3, r3
/* 802495C8 00246528 41 82 00 54 */ beq lbl_8024961C
/* 802495CC 0024652C 80 1E 00 04 */ lwz r0, 4(r30)
/* 802495D0 00246530 38 61 00 14 */ addi r3, r1, 0x14
/* 802495D4 00246534 80 BE 00 0C */ lwz r5, 0xc(r30)
/* 802495D8 00246538 38 81 00 0C */ addi r4, r1, 0xc
/* 802495DC 0024653C 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 802495E0 00246540 7C A5 02 14 */ add r5, r5, r0
/* 802495E4 00246544 90 A1 00 0C */ stw r5, 0xc(r1)
/* 802495E8 00246548 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 802495EC 0024654C 90 A1 00 08 */ stw r5, 8(r1)
/* 802495F0 00246550 90 01 00 10 */ stw r0, 0x10(r1)
/* 802495F4 00246554 90 01 00 14 */ stw r0, 0x14(r1)
/* 802495F8 00246558 48 00 00 41 */ bl sub_80249638
/* 802495FC 0024655C 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 80249600 00246560 28 03 00 00 */ cmplwi r3, 0
/* 80249604 00246564 41 82 00 08 */ beq lbl_8024960C
/* 80249608 00246568 48 0C C3 29 */ bl Free__7CMemoryFPCv
lbl_8024960C:
/* 8024960C 0024656C 7F E0 07 35 */ extsh. r0, r31
/* 80249610 00246570 40 81 00 0C */ ble lbl_8024961C
/* 80249614 00246574 7F C3 F3 78 */ mr r3, r30
/* 80249618 00246578 48 0C C3 19 */ bl Free__7CMemoryFPCv
lbl_8024961C:
/* 8024961C 0024657C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80249620 00246580 7F C3 F3 78 */ mr r3, r30
/* 80249624 00246584 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80249628 00246588 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8024962C 0024658C 7C 08 03 A6 */ mtlr r0
/* 80249630 00246590 38 21 00 20 */ addi r1, r1, 0x20
/* 80249634 00246594 4E 80 00 20 */ blr
.global sub_80249638
sub_80249638:
/* 80249638 00246598 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024963C 0024659C 7C 08 02 A6 */ mflr r0
/* 80249640 002465A0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80249644 002465A4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80249648 002465A8 93 C1 00 08 */ stw r30, 8(r1)
/* 8024964C 002465AC 7C 9E 23 78 */ mr r30, r4
/* 80249650 002465B0 83 E3 00 00 */ lwz r31, 0(r3)
/* 80249654 002465B4 48 00 00 10 */ b lbl_80249664
lbl_80249658:
/* 80249658 002465B8 7F E3 FB 78 */ mr r3, r31
/* 8024965C 002465BC 48 00 00 2D */ bl sub_80249688
/* 80249660 002465C0 3B FF 00 3C */ addi r31, r31, 0x3c
lbl_80249664:
/* 80249664 002465C4 80 1E 00 00 */ lwz r0, 0(r30)
/* 80249668 002465C8 7C 1F 00 40 */ cmplw r31, r0
/* 8024966C 002465CC 40 82 FF EC */ bne lbl_80249658
/* 80249670 002465D0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80249674 002465D4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80249678 002465D8 83 C1 00 08 */ lwz r30, 8(r1)
/* 8024967C 002465DC 7C 08 03 A6 */ mtlr r0
/* 80249680 002465E0 38 21 00 10 */ addi r1, r1, 0x10
/* 80249684 002465E4 4E 80 00 20 */ blr
.global sub_80249688
sub_80249688:
/* 80249688 002465E8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024968C 002465EC 7C 08 02 A6 */ mflr r0
/* 80249690 002465F0 38 80 FF FF */ li r4, -1
/* 80249694 002465F4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80249698 002465F8 48 00 00 15 */ bl sub_802496ac
/* 8024969C 002465FC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802496A0 00246600 7C 08 03 A6 */ mtlr r0
/* 802496A4 00246604 38 21 00 10 */ addi r1, r1, 0x10
/* 802496A8 00246608 4E 80 00 20 */ blr
.global sub_802496ac
sub_802496ac:
/* 802496AC 0024660C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802496B0 00246610 7C 08 02 A6 */ mflr r0
/* 802496B4 00246614 90 01 00 44 */ stw r0, 0x44(r1)
/* 802496B8 00246618 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 802496BC 0024661C 7C 9F 23 78 */ mr r31, r4
/* 802496C0 00246620 93 C1 00 38 */ stw r30, 0x38(r1)
/* 802496C4 00246624 7C 7E 1B 79 */ or. r30, r3, r3
/* 802496C8 00246628 93 A1 00 34 */ stw r29, 0x34(r1)
/* 802496CC 0024662C 41 82 01 10 */ beq lbl_802497DC
/* 802496D0 00246630 34 1E 00 34 */ addic. r0, r30, 0x34
/* 802496D4 00246634 41 82 00 34 */ beq lbl_80249708
/* 802496D8 00246638 88 1E 00 34 */ lbz r0, 0x34(r30)
/* 802496DC 0024663C 28 00 00 00 */ cmplwi r0, 0
/* 802496E0 00246640 41 82 00 28 */ beq lbl_80249708
/* 802496E4 00246644 83 BE 00 38 */ lwz r29, 0x38(r30)
/* 802496E8 00246648 28 1D 00 00 */ cmplwi r29, 0
/* 802496EC 0024664C 41 82 00 1C */ beq lbl_80249708
/* 802496F0 00246650 41 82 00 10 */ beq lbl_80249700
/* 802496F4 00246654 7F A3 EB 78 */ mr r3, r29
/* 802496F8 00246658 38 80 00 00 */ li r4, 0
/* 802496FC 0024665C 48 0F 77 45 */ bl __dt__6CTokenFv
lbl_80249700:
/* 80249700 00246660 7F A3 EB 78 */ mr r3, r29
/* 80249704 00246664 48 0C C2 2D */ bl Free__7CMemoryFPCv
lbl_80249708:
/* 80249708 00246668 34 1E 00 2C */ addic. r0, r30, 0x2c
/* 8024970C 0024666C 41 82 00 30 */ beq lbl_8024973C
/* 80249710 00246670 88 1E 00 2C */ lbz r0, 0x2c(r30)
/* 80249714 00246674 28 00 00 00 */ cmplwi r0, 0
/* 80249718 00246678 41 82 00 24 */ beq lbl_8024973C
/* 8024971C 0024667C 80 7E 00 30 */ lwz r3, 0x30(r30)
/* 80249720 00246680 28 03 00 00 */ cmplwi r3, 0
/* 80249724 00246684 41 82 00 18 */ beq lbl_8024973C
/* 80249728 00246688 81 83 00 00 */ lwz r12, 0(r3)
/* 8024972C 0024668C 38 80 00 01 */ li r4, 1
/* 80249730 00246690 81 8C 00 08 */ lwz r12, 8(r12)
/* 80249734 00246694 7D 89 03 A6 */ mtctr r12
/* 80249738 00246698 4E 80 04 21 */ bctrl
lbl_8024973C:
/* 8024973C 0024669C 34 1E 00 1C */ addic. r0, r30, 0x1c
/* 80249740 002466A0 41 82 00 44 */ beq lbl_80249784
/* 80249744 002466A4 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 80249748 002466A8 80 7E 00 28 */ lwz r3, 0x28(r30)
/* 8024974C 002466AC 54 00 20 36 */ slwi r0, r0, 4
/* 80249750 002466B0 7C 03 02 14 */ add r0, r3, r0
/* 80249754 002466B4 90 61 00 1C */ stw r3, 0x1c(r1)
/* 80249758 002466B8 7C 64 1B 78 */ mr r4, r3
/* 8024975C 002466BC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80249760 002466C0 90 01 00 20 */ stw r0, 0x20(r1)
/* 80249764 002466C4 90 61 00 18 */ stw r3, 0x18(r1)
/* 80249768 002466C8 48 00 00 08 */ b lbl_80249770
lbl_8024976C:
/* 8024976C 002466CC 38 84 00 10 */ addi r4, r4, 0x10
lbl_80249770:
/* 80249770 002466D0 7C 04 00 40 */ cmplw r4, r0
/* 80249774 002466D4 40 82 FF F8 */ bne lbl_8024976C
/* 80249778 002466D8 28 03 00 00 */ cmplwi r3, 0
/* 8024977C 002466DC 41 82 00 08 */ beq lbl_80249784
/* 80249780 002466E0 48 0C C1 B1 */ bl Free__7CMemoryFPCv
lbl_80249784:
/* 80249784 002466E4 34 1E 00 0C */ addic. r0, r30, 0xc
/* 80249788 002466E8 41 82 00 44 */ beq lbl_802497CC
/* 8024978C 002466EC 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 80249790 002466F0 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 80249794 002466F4 54 00 10 3A */ slwi r0, r0, 2
/* 80249798 002466F8 7C 03 02 14 */ add r0, r3, r0
/* 8024979C 002466FC 90 61 00 0C */ stw r3, 0xc(r1)
/* 802497A0 00246700 7C 64 1B 78 */ mr r4, r3
/* 802497A4 00246704 90 01 00 14 */ stw r0, 0x14(r1)
/* 802497A8 00246708 90 01 00 10 */ stw r0, 0x10(r1)
/* 802497AC 0024670C 90 61 00 08 */ stw r3, 8(r1)
/* 802497B0 00246710 48 00 00 08 */ b lbl_802497B8
lbl_802497B4:
/* 802497B4 00246714 38 84 00 04 */ addi r4, r4, 4
lbl_802497B8:
/* 802497B8 00246718 7C 04 00 40 */ cmplw r4, r0
/* 802497BC 0024671C 40 82 FF F8 */ bne lbl_802497B4
/* 802497C0 00246720 28 03 00 00 */ cmplwi r3, 0
/* 802497C4 00246724 41 82 00 08 */ beq lbl_802497CC
/* 802497C8 00246728 48 0C C1 69 */ bl Free__7CMemoryFPCv
lbl_802497CC:
/* 802497CC 0024672C 7F E0 07 35 */ extsh. r0, r31
/* 802497D0 00246730 40 81 00 0C */ ble lbl_802497DC
/* 802497D4 00246734 7F C3 F3 78 */ mr r3, r30
/* 802497D8 00246738 48 0C C1 59 */ bl Free__7CMemoryFPCv
lbl_802497DC:
/* 802497DC 0024673C 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802497E0 00246740 7F C3 F3 78 */ mr r3, r30
/* 802497E4 00246744 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 802497E8 00246748 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 802497EC 0024674C 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 802497F0 00246750 7C 08 03 A6 */ mtlr r0
/* 802497F4 00246754 38 21 00 40 */ addi r1, r1, 0x40
/* 802497F8 00246758 4E 80 00 20 */ blr
.global InitializePump__20CMemorySomethingElseFv
InitializePump__20CMemorySomethingElseFv:
/* 802497FC 0024675C 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 80249800 00246760 7C 08 02 A6 */ mflr r0
/* 80249804 00246764 90 01 00 54 */ stw r0, 0x54(r1)
/* 80249808 00246768 BF 61 00 3C */ stmw r27, 0x3c(r1)
/* 8024980C 0024676C 7C 7F 1B 78 */ mr r31, r3
/* 80249810 00246770 80 63 00 30 */ lwz r3, 0x30(r3)
/* 80249814 00246774 28 03 00 00 */ cmplwi r3, 0
/* 80249818 00246778 41 82 03 08 */ beq lbl_80249B20
/* 8024981C 0024677C 81 83 00 00 */ lwz r12, 0(r3)
/* 80249820 00246780 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 80249824 00246784 7D 89 03 A6 */ mtctr r12
/* 80249828 00246788 4E 80 04 21 */ bctrl
/* 8024982C 0024678C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80249830 00246790 41 82 03 60 */ beq lbl_80249B90
/* 80249834 00246794 83 BF 00 30 */ lwz r29, 0x30(r31)
/* 80249838 00246798 81 9D 00 00 */ lwz r12, 0(r29)
/* 8024983C 0024679C 7F A3 EB 78 */ mr r3, r29
/* 80249840 002467A0 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 80249844 002467A4 7D 89 03 A6 */ mtctr r12
/* 80249848 002467A8 4E 80 04 21 */ bctrl
/* 8024984C 002467AC 90 7F 00 04 */ stw r3, 4(r31)
/* 80249850 002467B0 7F A3 EB 78 */ mr r3, r29
/* 80249854 002467B4 81 9D 00 00 */ lwz r12, 0(r29)
/* 80249858 002467B8 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 8024985C 002467BC 7D 89 03 A6 */ mtctr r12
/* 80249860 002467C0 4E 80 04 21 */ bctrl
/* 80249864 002467C4 90 7F 00 08 */ stw r3, 8(r31)
/* 80249868 002467C8 7F A3 EB 78 */ mr r3, r29
/* 8024986C 002467CC 81 9D 00 00 */ lwz r12, 0(r29)
/* 80249870 002467D0 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 80249874 002467D4 7D 89 03 A6 */ mtctr r12
/* 80249878 002467D8 4E 80 04 21 */ bctrl
/* 8024987C 002467DC 7C 60 1B 78 */ mr r0, r3
/* 80249880 002467E0 38 7F 00 0C */ addi r3, r31, 0xc
/* 80249884 002467E4 7C 1C 03 78 */ mr r28, r0
/* 80249888 002467E8 7F 84 E3 78 */ mr r4, r28
/* 8024988C 002467EC 4B E1 A2 99 */ bl "reserve__Q24rstl37vector<Ui,Q24rstl17rmemory_allocator>Fi"
/* 80249890 002467F0 3B 60 00 00 */ li r27, 0
/* 80249894 002467F4 48 00 00 88 */ b lbl_8024991C
lbl_80249898:
/* 80249898 002467F8 93 61 00 0C */ stw r27, 0xc(r1)
/* 8024989C 002467FC 7F A3 EB 78 */ mr r3, r29
/* 802498A0 00246800 38 81 00 0C */ addi r4, r1, 0xc
/* 802498A4 00246804 81 9D 00 00 */ lwz r12, 0(r29)
/* 802498A8 00246808 93 61 00 08 */ stw r27, 8(r1)
/* 802498AC 0024680C 81 8C 00 20 */ lwz r12, 0x20(r12)
/* 802498B0 00246810 7D 89 03 A6 */ mtctr r12
/* 802498B4 00246814 4E 80 04 21 */ bctrl
/* 802498B8 00246818 81 83 00 00 */ lwz r12, 0(r3)
/* 802498BC 0024681C 81 8C 00 24 */ lwz r12, 0x24(r12)
/* 802498C0 00246820 7D 89 03 A6 */ mtctr r12
/* 802498C4 00246824 4E 80 04 21 */ bctrl
/* 802498C8 00246828 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 802498CC 0024682C 7C 7E 1B 78 */ mr r30, r3
/* 802498D0 00246830 80 BF 00 14 */ lwz r5, 0x14(r31)
/* 802498D4 00246834 7C 00 28 00 */ cmpw r0, r5
/* 802498D8 00246838 41 80 00 1C */ blt lbl_802498F4
/* 802498DC 0024683C 2C 05 00 00 */ cmpwi r5, 0
/* 802498E0 00246840 38 7F 00 0C */ addi r3, r31, 0xc
/* 802498E4 00246844 38 80 00 04 */ li r4, 4
/* 802498E8 00246848 41 82 00 08 */ beq lbl_802498F0
/* 802498EC 0024684C 54 A4 08 3C */ slwi r4, r5, 1
lbl_802498F0:
/* 802498F0 00246850 4B E1 A2 35 */ bl "reserve__Q24rstl37vector<Ui,Q24rstl17rmemory_allocator>Fi"
lbl_802498F4:
/* 802498F4 00246854 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 802498F8 00246858 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 802498FC 0024685C 54 00 10 3A */ slwi r0, r0, 2
/* 80249900 00246860 7C 63 02 15 */ add. r3, r3, r0
/* 80249904 00246864 41 82 00 08 */ beq lbl_8024990C
/* 80249908 00246868 93 C3 00 00 */ stw r30, 0(r3)
lbl_8024990C:
/* 8024990C 0024686C 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 80249910 00246870 3B 7B 00 01 */ addi r27, r27, 1
/* 80249914 00246874 38 03 00 01 */ addi r0, r3, 1
/* 80249918 00246878 90 1F 00 10 */ stw r0, 0x10(r31)
lbl_8024991C:
/* 8024991C 0024687C 7C 1B E0 00 */ cmpw r27, r28
/* 80249920 00246880 41 80 FF 78 */ blt lbl_80249898
/* 80249924 00246884 7F A3 EB 78 */ mr r3, r29
/* 80249928 00246888 81 9D 00 00 */ lwz r12, 0(r29)
/* 8024992C 0024688C 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80249930 00246890 7D 89 03 A6 */ mtctr r12
/* 80249934 00246894 4E 80 04 21 */ bctrl
/* 80249938 00246898 7C 64 1B 78 */ mr r4, r3
/* 8024993C 0024689C 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13)
/* 80249940 002468A0 4B F8 A0 99 */ bl StateForWorld__10CGameStateFUi
/* 80249944 002468A4 4B F8 B3 F1 */ bl GetLayerState__11CWorldStateFv
/* 80249948 002468A8 80 63 00 00 */ lwz r3, 0(r3)
/* 8024994C 002468AC 80 63 00 00 */ lwz r3, 0(r3)
/* 80249950 002468B0 4B FE A6 61 */ bl nullsub_5
/* 80249954 002468B4 7C 64 1B 78 */ mr r4, r3
/* 80249958 002468B8 38 7F 00 1C */ addi r3, r31, 0x1c
/* 8024995C 002468BC 4B FE A8 11 */ bl sub_8023416c
/* 80249960 002468C0 80 7F 00 08 */ lwz r3, 8(r31)
/* 80249964 002468C4 3C 03 00 01 */ addis r0, r3, 1
/* 80249968 002468C8 28 00 FF FF */ cmplwi r0, 0xffff
/* 8024996C 002468CC 41 82 01 24 */ beq lbl_80249A90
/* 80249970 002468D0 3C 60 80 3D */ lis r3, lbl_803D4780@ha
/* 80249974 002468D4 3B C0 00 00 */ li r30, 0
/* 80249978 002468D8 38 83 47 80 */ addi r4, r3, lbl_803D4780@l
/* 8024997C 002468DC 38 A0 00 00 */ li r5, 0
/* 80249980 002468E0 38 60 00 0C */ li r3, 0xc
/* 80249984 002468E4 48 0C BE E9 */ bl __nw__FUlPCcPCc
/* 80249988 002468E8 7C 7D 1B 79 */ or. r29, r3, r3
/* 8024998C 002468EC 41 82 00 4C */ beq lbl_802499D8
/* 80249990 002468F0 80 DF 00 08 */ lwz r6, 8(r31)
/* 80249994 002468F4 3C 60 53 41 */ lis r3, 0x53415657@ha
/* 80249998 002468F8 38 03 56 57 */ addi r0, r3, 0x53415657@l
/* 8024999C 002468FC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 802499A0 00246900 90 01 00 28 */ stw r0, 0x28(r1)
/* 802499A4 00246904 38 61 00 20 */ addi r3, r1, 0x20
/* 802499A8 00246908 38 A1 00 28 */ addi r5, r1, 0x28
/* 802499AC 0024690C 90 C1 00 2C */ stw r6, 0x2c(r1)
/* 802499B0 00246910 81 84 00 00 */ lwz r12, 0(r4)
/* 802499B4 00246914 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802499B8 00246918 7D 89 03 A6 */ mtctr r12
/* 802499BC 0024691C 4E 80 04 21 */ bctrl
/* 802499C0 00246920 7F A3 EB 78 */ mr r3, r29
/* 802499C4 00246924 38 81 00 20 */ addi r4, r1, 0x20
/* 802499C8 00246928 3B C0 00 01 */ li r30, 1
/* 802499CC 0024692C 48 0F 74 DD */ bl __ct__6CTokenFRC6CToken
/* 802499D0 00246930 38 00 00 00 */ li r0, 0
/* 802499D4 00246934 90 1D 00 08 */ stw r0, 8(r29)
lbl_802499D8:
/* 802499D8 00246938 7C 1D 00 D0 */ neg r0, r29
/* 802499DC 0024693C 38 61 00 18 */ addi r3, r1, 0x18
/* 802499E0 00246940 7C 04 EB 78 */ or r4, r0, r29
/* 802499E4 00246944 38 1F 00 34 */ addi r0, r31, 0x34
/* 802499E8 00246948 54 84 0F FE */ srwi r4, r4, 0x1f
/* 802499EC 0024694C 93 A1 00 1C */ stw r29, 0x1c(r1)
/* 802499F0 00246950 7C 03 00 40 */ cmplw r3, r0
/* 802499F4 00246954 98 81 00 18 */ stb r4, 0x18(r1)
/* 802499F8 00246958 41 82 00 4C */ beq lbl_80249A44
/* 802499FC 0024695C 88 1F 00 34 */ lbz r0, 0x34(r31)
/* 80249A00 00246960 28 00 00 00 */ cmplwi r0, 0
/* 80249A04 00246964 41 82 00 28 */ beq lbl_80249A2C
/* 80249A08 00246968 83 BF 00 38 */ lwz r29, 0x38(r31)
/* 80249A0C 0024696C 28 1D 00 00 */ cmplwi r29, 0
/* 80249A10 00246970 41 82 00 1C */ beq lbl_80249A2C
/* 80249A14 00246974 41 82 00 10 */ beq lbl_80249A24
/* 80249A18 00246978 7F A3 EB 78 */ mr r3, r29
/* 80249A1C 0024697C 38 80 00 00 */ li r4, 0
/* 80249A20 00246980 48 0F 74 21 */ bl __dt__6CTokenFv
lbl_80249A24:
/* 80249A24 00246984 7F A3 EB 78 */ mr r3, r29
/* 80249A28 00246988 48 0C BF 09 */ bl Free__7CMemoryFPCv
lbl_80249A2C:
/* 80249A2C 0024698C 88 61 00 18 */ lbz r3, 0x18(r1)
/* 80249A30 00246990 38 00 00 00 */ li r0, 0
/* 80249A34 00246994 98 7F 00 34 */ stb r3, 0x34(r31)
/* 80249A38 00246998 80 61 00 1C */ lwz r3, 0x1c(r1)
/* 80249A3C 0024699C 90 7F 00 38 */ stw r3, 0x38(r31)
/* 80249A40 002469A0 98 01 00 18 */ stb r0, 0x18(r1)
lbl_80249A44:
/* 80249A44 002469A4 88 01 00 18 */ lbz r0, 0x18(r1)
/* 80249A48 002469A8 28 00 00 00 */ cmplwi r0, 0
/* 80249A4C 002469AC 41 82 00 28 */ beq lbl_80249A74
/* 80249A50 002469B0 83 A1 00 1C */ lwz r29, 0x1c(r1)
/* 80249A54 002469B4 28 1D 00 00 */ cmplwi r29, 0
/* 80249A58 002469B8 41 82 00 1C */ beq lbl_80249A74
/* 80249A5C 002469BC 41 82 00 10 */ beq lbl_80249A6C
/* 80249A60 002469C0 7F A3 EB 78 */ mr r3, r29
/* 80249A64 002469C4 38 80 00 00 */ li r4, 0
/* 80249A68 002469C8 48 0F 73 D9 */ bl __dt__6CTokenFv
lbl_80249A6C:
/* 80249A6C 002469CC 7F A3 EB 78 */ mr r3, r29
/* 80249A70 002469D0 48 0C BE C1 */ bl Free__7CMemoryFPCv
lbl_80249A74:
/* 80249A74 002469D4 7F C0 07 75 */ extsb. r0, r30
/* 80249A78 002469D8 41 82 00 10 */ beq lbl_80249A88
/* 80249A7C 002469DC 38 61 00 20 */ addi r3, r1, 0x20
/* 80249A80 002469E0 38 80 FF FF */ li r4, -1
/* 80249A84 002469E4 48 0F 73 BD */ bl __dt__6CTokenFv
lbl_80249A88:
/* 80249A88 002469E8 80 7F 00 38 */ lwz r3, 0x38(r31)
/* 80249A8C 002469EC 48 0F 72 F9 */ bl Lock__6CTokenFv
lbl_80249A90:
/* 80249A90 002469F0 38 61 00 10 */ addi r3, r1, 0x10
/* 80249A94 002469F4 38 1F 00 2C */ addi r0, r31, 0x2c
/* 80249A98 002469F8 38 80 00 00 */ li r4, 0
/* 80249A9C 002469FC 7C 03 00 40 */ cmplw r3, r0
/* 80249AA0 00246A00 98 81 00 10 */ stb r4, 0x10(r1)
/* 80249AA4 00246A04 90 81 00 14 */ stw r4, 0x14(r1)
/* 80249AA8 00246A08 41 82 00 48 */ beq lbl_80249AF0
/* 80249AAC 00246A0C 88 1F 00 2C */ lbz r0, 0x2c(r31)
/* 80249AB0 00246A10 28 00 00 00 */ cmplwi r0, 0
/* 80249AB4 00246A14 41 82 00 24 */ beq lbl_80249AD8
/* 80249AB8 00246A18 80 7F 00 30 */ lwz r3, 0x30(r31)
/* 80249ABC 00246A1C 28 03 00 00 */ cmplwi r3, 0
/* 80249AC0 00246A20 41 82 00 18 */ beq lbl_80249AD8
/* 80249AC4 00246A24 81 83 00 00 */ lwz r12, 0(r3)
/* 80249AC8 00246A28 38 80 00 01 */ li r4, 1
/* 80249ACC 00246A2C 81 8C 00 08 */ lwz r12, 8(r12)
/* 80249AD0 00246A30 7D 89 03 A6 */ mtctr r12
/* 80249AD4 00246A34 4E 80 04 21 */ bctrl
lbl_80249AD8:
/* 80249AD8 00246A38 88 61 00 10 */ lbz r3, 0x10(r1)
/* 80249ADC 00246A3C 38 00 00 00 */ li r0, 0
/* 80249AE0 00246A40 98 7F 00 2C */ stb r3, 0x2c(r31)
/* 80249AE4 00246A44 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80249AE8 00246A48 90 7F 00 30 */ stw r3, 0x30(r31)
/* 80249AEC 00246A4C 98 01 00 10 */ stb r0, 0x10(r1)
lbl_80249AF0:
/* 80249AF0 00246A50 88 01 00 10 */ lbz r0, 0x10(r1)
/* 80249AF4 00246A54 28 00 00 00 */ cmplwi r0, 0
/* 80249AF8 00246A58 41 82 00 98 */ beq lbl_80249B90
/* 80249AFC 00246A5C 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80249B00 00246A60 28 03 00 00 */ cmplwi r3, 0
/* 80249B04 00246A64 41 82 00 8C */ beq lbl_80249B90
/* 80249B08 00246A68 81 83 00 00 */ lwz r12, 0(r3)
/* 80249B0C 00246A6C 38 80 00 01 */ li r4, 1
/* 80249B10 00246A70 81 8C 00 08 */ lwz r12, 8(r12)
/* 80249B14 00246A74 7D 89 03 A6 */ mtctr r12
/* 80249B18 00246A78 4E 80 04 21 */ bctrl
/* 80249B1C 00246A7C 48 00 00 74 */ b lbl_80249B90
lbl_80249B20:
/* 80249B20 00246A80 83 BF 00 38 */ lwz r29, 0x38(r31)
/* 80249B24 00246A84 28 1D 00 00 */ cmplwi r29, 0
/* 80249B28 00246A88 41 82 00 60 */ beq lbl_80249B88
/* 80249B2C 00246A8C 80 1D 00 08 */ lwz r0, 8(r29)
/* 80249B30 00246A90 28 00 00 00 */ cmplwi r0, 0
/* 80249B34 00246A94 41 82 00 0C */ beq lbl_80249B40
/* 80249B38 00246A98 38 60 00 01 */ li r3, 1
/* 80249B3C 00246A9C 48 00 00 3C */ b lbl_80249B78
lbl_80249B40:
/* 80249B40 00246AA0 88 1D 00 04 */ lbz r0, 4(r29)
/* 80249B44 00246AA4 28 00 00 00 */ cmplwi r0, 0
/* 80249B48 00246AA8 41 82 00 2C */ beq lbl_80249B74
/* 80249B4C 00246AAC 80 7D 00 00 */ lwz r3, 0(r29)
/* 80249B50 00246AB0 80 03 00 10 */ lwz r0, 0x10(r3)
/* 80249B54 00246AB4 28 00 00 00 */ cmplwi r0, 0
/* 80249B58 00246AB8 41 82 00 1C */ beq lbl_80249B74
/* 80249B5C 00246ABC 7F A3 EB 78 */ mr r3, r29
/* 80249B60 00246AC0 48 0F 72 AD */ bl GetObj__6CTokenFv
/* 80249B64 00246AC4 80 03 00 04 */ lwz r0, 4(r3)
/* 80249B68 00246AC8 38 60 00 01 */ li r3, 1
/* 80249B6C 00246ACC 90 1D 00 08 */ stw r0, 8(r29)
/* 80249B70 00246AD0 48 00 00 08 */ b lbl_80249B78
lbl_80249B74:
/* 80249B74 00246AD4 38 60 00 00 */ li r3, 0
lbl_80249B78:
/* 80249B78 00246AD8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80249B7C 00246ADC 41 82 00 14 */ beq lbl_80249B90
/* 80249B80 00246AE0 38 60 00 01 */ li r3, 1
/* 80249B84 00246AE4 48 00 00 10 */ b lbl_80249B94
lbl_80249B88:
/* 80249B88 00246AE8 38 60 00 01 */ li r3, 1
/* 80249B8C 00246AEC 48 00 00 08 */ b lbl_80249B94
lbl_80249B90:
/* 80249B90 00246AF0 38 60 00 00 */ li r3, 0
lbl_80249B94:
/* 80249B94 00246AF4 BB 61 00 3C */ lmw r27, 0x3c(r1)
/* 80249B98 00246AF8 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80249B9C 00246AFC 7C 08 03 A6 */ mtlr r0
/* 80249BA0 00246B00 38 21 00 50 */ addi r1, r1, 0x50
/* 80249BA4 00246B04 4E 80 00 20 */ blr
.global __ct__20CMemorySomethingElseFUiUi
__ct__20CMemorySomethingElseFUiUi:
/* 80249BA8 00246B08 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80249BAC 00246B0C 7C 08 02 A6 */ mflr r0
/* 80249BB0 00246B10 90 01 00 44 */ stw r0, 0x44(r1)
/* 80249BB4 00246B14 BF 61 00 2C */ stmw r27, 0x2c(r1)
/* 80249BB8 00246B18 7C 7D 1B 78 */ mr r29, r3
/* 80249BBC 00246B1C 38 60 00 00 */ li r3, 0
/* 80249BC0 00246B20 7C BF 2B 78 */ mr r31, r5
/* 80249BC4 00246B24 3C 1F 00 01 */ addis r0, r31, 1
/* 80249BC8 00246B28 7C 9E 23 78 */ mr r30, r4
/* 80249BCC 00246B2C 28 00 FF FF */ cmplwi r0, 0xffff
/* 80249BD0 00246B30 90 7D 00 10 */ stw r3, 0x10(r29)
/* 80249BD4 00246B34 90 7D 00 14 */ stw r3, 0x14(r29)
/* 80249BD8 00246B38 90 7D 00 18 */ stw r3, 0x18(r29)
/* 80249BDC 00246B3C 90 7D 00 20 */ stw r3, 0x20(r29)
/* 80249BE0 00246B40 90 7D 00 24 */ stw r3, 0x24(r29)
/* 80249BE4 00246B44 90 7D 00 28 */ stw r3, 0x28(r29)
/* 80249BE8 00246B48 98 7D 00 2C */ stb r3, 0x2c(r29)
/* 80249BEC 00246B4C 90 7D 00 30 */ stw r3, 0x30(r29)
/* 80249BF0 00246B50 98 7D 00 34 */ stb r3, 0x34(r29)
/* 80249BF4 00246B54 90 7D 00 38 */ stw r3, 0x38(r29)
/* 80249BF8 00246B58 40 82 00 C8 */ bne lbl_80249CC0
/* 80249BFC 00246B5C 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 80249C00 00246B60 38 60 00 40 */ li r3, 0x40
/* 80249C04 00246B64 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 80249C08 00246B68 38 A0 00 00 */ li r5, 0
/* 80249C0C 00246B6C 48 0C BC 61 */ bl __nw__FUlPCcPCc
/* 80249C10 00246B70 7C 64 1B 79 */ or. r4, r3, r3
/* 80249C14 00246B74 41 82 00 14 */ beq lbl_80249C28
/* 80249C18 00246B78 7F C4 F3 78 */ mr r4, r30
/* 80249C1C 00246B7C 38 A0 00 00 */ li r5, 0
/* 80249C20 00246B80 4B E0 D8 5D */ bl __ct__11CDummyWorldFUi
/* 80249C24 00246B84 7C 64 1B 78 */ mr r4, r3
lbl_80249C28:
/* 80249C28 00246B88 7C 64 00 D0 */ neg r3, r4
/* 80249C2C 00246B8C 38 01 00 20 */ addi r0, r1, 0x20
/* 80249C30 00246B90 7C 63 23 78 */ or r3, r3, r4
/* 80249C34 00246B94 38 BD 00 2C */ addi r5, r29, 0x2c
/* 80249C38 00246B98 54 63 0F FE */ srwi r3, r3, 0x1f
/* 80249C3C 00246B9C 90 81 00 24 */ stw r4, 0x24(r1)
/* 80249C40 00246BA0 7C 00 28 40 */ cmplw r0, r5
/* 80249C44 00246BA4 98 61 00 20 */ stb r3, 0x20(r1)
/* 80249C48 00246BA8 41 82 00 48 */ beq lbl_80249C90
/* 80249C4C 00246BAC 88 05 00 00 */ lbz r0, 0(r5)
/* 80249C50 00246BB0 28 00 00 00 */ cmplwi r0, 0
/* 80249C54 00246BB4 41 82 00 24 */ beq lbl_80249C78
/* 80249C58 00246BB8 80 7D 00 30 */ lwz r3, 0x30(r29)
/* 80249C5C 00246BBC 28 03 00 00 */ cmplwi r3, 0
/* 80249C60 00246BC0 41 82 00 18 */ beq lbl_80249C78
/* 80249C64 00246BC4 81 83 00 00 */ lwz r12, 0(r3)
/* 80249C68 00246BC8 38 80 00 01 */ li r4, 1
/* 80249C6C 00246BCC 81 8C 00 08 */ lwz r12, 8(r12)
/* 80249C70 00246BD0 7D 89 03 A6 */ mtctr r12
/* 80249C74 00246BD4 4E 80 04 21 */ bctrl
lbl_80249C78:
/* 80249C78 00246BD8 88 61 00 20 */ lbz r3, 0x20(r1)
/* 80249C7C 00246BDC 38 00 00 00 */ li r0, 0
/* 80249C80 00246BE0 98 7D 00 2C */ stb r3, 0x2c(r29)
/* 80249C84 00246BE4 80 61 00 24 */ lwz r3, 0x24(r1)
/* 80249C88 00246BE8 90 7D 00 30 */ stw r3, 0x30(r29)
/* 80249C8C 00246BEC 98 01 00 20 */ stb r0, 0x20(r1)
lbl_80249C90:
/* 80249C90 00246BF0 88 01 00 20 */ lbz r0, 0x20(r1)
/* 80249C94 00246BF4 28 00 00 00 */ cmplwi r0, 0
/* 80249C98 00246BF8 41 82 01 44 */ beq lbl_80249DDC
/* 80249C9C 00246BFC 80 61 00 24 */ lwz r3, 0x24(r1)
/* 80249CA0 00246C00 28 03 00 00 */ cmplwi r3, 0
/* 80249CA4 00246C04 41 82 01 38 */ beq lbl_80249DDC
/* 80249CA8 00246C08 81 83 00 00 */ lwz r12, 0(r3)
/* 80249CAC 00246C0C 38 80 00 01 */ li r4, 1
/* 80249CB0 00246C10 81 8C 00 08 */ lwz r12, 8(r12)
/* 80249CB4 00246C14 7D 89 03 A6 */ mtctr r12
/* 80249CB8 00246C18 4E 80 04 21 */ bctrl
/* 80249CBC 00246C1C 48 00 01 20 */ b lbl_80249DDC
lbl_80249CC0:
/* 80249CC0 00246C20 3C 60 80 3D */ lis r3, lbl_803D4780@ha
/* 80249CC4 00246C24 3B 80 00 00 */ li r28, 0
/* 80249CC8 00246C28 38 83 47 80 */ addi r4, r3, lbl_803D4780@l
/* 80249CCC 00246C2C 38 A0 00 00 */ li r5, 0
/* 80249CD0 00246C30 38 60 00 0C */ li r3, 0xc
/* 80249CD4 00246C34 48 0C BB 99 */ bl __nw__FUlPCcPCc
/* 80249CD8 00246C38 7C 7B 1B 79 */ or. r27, r3, r3
/* 80249CDC 00246C3C 41 82 00 48 */ beq lbl_80249D24
/* 80249CE0 00246C40 3C 60 53 41 */ lis r3, 0x53415657@ha
/* 80249CE4 00246C44 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80249CE8 00246C48 38 03 56 57 */ addi r0, r3, 0x53415657@l
/* 80249CEC 00246C4C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 80249CF0 00246C50 90 01 00 18 */ stw r0, 0x18(r1)
/* 80249CF4 00246C54 38 61 00 10 */ addi r3, r1, 0x10
/* 80249CF8 00246C58 38 A1 00 18 */ addi r5, r1, 0x18
/* 80249CFC 00246C5C 81 84 00 00 */ lwz r12, 0(r4)
/* 80249D00 00246C60 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80249D04 00246C64 7D 89 03 A6 */ mtctr r12
/* 80249D08 00246C68 4E 80 04 21 */ bctrl
/* 80249D0C 00246C6C 7F 63 DB 78 */ mr r3, r27
/* 80249D10 00246C70 38 81 00 10 */ addi r4, r1, 0x10
/* 80249D14 00246C74 3B 80 00 01 */ li r28, 1
/* 80249D18 00246C78 48 0F 71 91 */ bl __ct__6CTokenFRC6CToken
/* 80249D1C 00246C7C 38 00 00 00 */ li r0, 0
/* 80249D20 00246C80 90 1B 00 08 */ stw r0, 8(r27)
lbl_80249D24:
/* 80249D24 00246C84 7C 7B 00 D0 */ neg r3, r27
/* 80249D28 00246C88 38 01 00 08 */ addi r0, r1, 8
/* 80249D2C 00246C8C 7C 63 DB 78 */ or r3, r3, r27
/* 80249D30 00246C90 38 9D 00 34 */ addi r4, r29, 0x34
/* 80249D34 00246C94 54 63 0F FE */ srwi r3, r3, 0x1f
/* 80249D38 00246C98 93 61 00 0C */ stw r27, 0xc(r1)
/* 80249D3C 00246C9C 7C 00 20 40 */ cmplw r0, r4
/* 80249D40 00246CA0 98 61 00 08 */ stb r3, 8(r1)
/* 80249D44 00246CA4 41 82 00 4C */ beq lbl_80249D90
/* 80249D48 00246CA8 88 04 00 00 */ lbz r0, 0(r4)
/* 80249D4C 00246CAC 28 00 00 00 */ cmplwi r0, 0
/* 80249D50 00246CB0 41 82 00 28 */ beq lbl_80249D78
/* 80249D54 00246CB4 83 7D 00 38 */ lwz r27, 0x38(r29)
/* 80249D58 00246CB8 28 1B 00 00 */ cmplwi r27, 0
/* 80249D5C 00246CBC 41 82 00 1C */ beq lbl_80249D78
/* 80249D60 00246CC0 41 82 00 10 */ beq lbl_80249D70
/* 80249D64 00246CC4 7F 63 DB 78 */ mr r3, r27
/* 80249D68 00246CC8 38 80 00 00 */ li r4, 0
/* 80249D6C 00246CCC 48 0F 70 D5 */ bl __dt__6CTokenFv
lbl_80249D70:
/* 80249D70 00246CD0 7F 63 DB 78 */ mr r3, r27
/* 80249D74 00246CD4 48 0C BB BD */ bl Free__7CMemoryFPCv
lbl_80249D78:
/* 80249D78 00246CD8 88 61 00 08 */ lbz r3, 8(r1)
/* 80249D7C 00246CDC 38 00 00 00 */ li r0, 0
/* 80249D80 00246CE0 98 7D 00 34 */ stb r3, 0x34(r29)
/* 80249D84 00246CE4 80 61 00 0C */ lwz r3, 0xc(r1)
/* 80249D88 00246CE8 90 7D 00 38 */ stw r3, 0x38(r29)
/* 80249D8C 00246CEC 98 01 00 08 */ stb r0, 8(r1)
lbl_80249D90:
/* 80249D90 00246CF0 88 01 00 08 */ lbz r0, 8(r1)
/* 80249D94 00246CF4 28 00 00 00 */ cmplwi r0, 0
/* 80249D98 00246CF8 41 82 00 28 */ beq lbl_80249DC0
/* 80249D9C 00246CFC 83 61 00 0C */ lwz r27, 0xc(r1)
/* 80249DA0 00246D00 28 1B 00 00 */ cmplwi r27, 0
/* 80249DA4 00246D04 41 82 00 1C */ beq lbl_80249DC0
/* 80249DA8 00246D08 41 82 00 10 */ beq lbl_80249DB8
/* 80249DAC 00246D0C 7F 63 DB 78 */ mr r3, r27
/* 80249DB0 00246D10 38 80 00 00 */ li r4, 0
/* 80249DB4 00246D14 48 0F 70 8D */ bl __dt__6CTokenFv
lbl_80249DB8:
/* 80249DB8 00246D18 7F 63 DB 78 */ mr r3, r27
/* 80249DBC 00246D1C 48 0C BB 75 */ bl Free__7CMemoryFPCv
lbl_80249DC0:
/* 80249DC0 00246D20 7F 80 07 75 */ extsb. r0, r28
/* 80249DC4 00246D24 41 82 00 10 */ beq lbl_80249DD4
/* 80249DC8 00246D28 38 61 00 10 */ addi r3, r1, 0x10
/* 80249DCC 00246D2C 38 80 FF FF */ li r4, -1
/* 80249DD0 00246D30 48 0F 70 71 */ bl __dt__6CTokenFv
lbl_80249DD4:
/* 80249DD4 00246D34 80 7D 00 38 */ lwz r3, 0x38(r29)
/* 80249DD8 00246D38 48 0F 6F AD */ bl Lock__6CTokenFv
lbl_80249DDC:
/* 80249DDC 00246D3C 93 DD 00 00 */ stw r30, 0(r29)
/* 80249DE0 00246D40 38 00 FF FF */ li r0, -1
/* 80249DE4 00246D44 7F A3 EB 78 */ mr r3, r29
/* 80249DE8 00246D48 90 1D 00 04 */ stw r0, 4(r29)
/* 80249DEC 00246D4C 93 FD 00 08 */ stw r31, 8(r29)
/* 80249DF0 00246D50 BB 61 00 2C */ lmw r27, 0x2c(r1)
/* 80249DF4 00246D54 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80249DF8 00246D58 7C 08 03 A6 */ mtlr r0
/* 80249DFC 00246D5C 38 21 00 40 */ addi r1, r1, 0x40
/* 80249E00 00246D60 4E 80 00 20 */ blr
.global __dt__14CMemoryCardSysFv
__dt__14CMemoryCardSysFv:
/* 80249E04 00246D64 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80249E08 00246D68 7C 08 02 A6 */ mflr r0
/* 80249E0C 00246D6C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80249E10 00246D70 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80249E14 00246D74 7C 9F 23 78 */ mr r31, r4
/* 80249E18 00246D78 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80249E1C 00246D7C 7C 7E 1B 79 */ or. r30, r3, r3
/* 80249E20 00246D80 41 82 00 E8 */ beq lbl_80249F08
/* 80249E24 00246D84 34 1E 00 30 */ addic. r0, r30, 0x30
/* 80249E28 00246D88 41 82 00 58 */ beq lbl_80249E80
/* 80249E2C 00246D8C 80 BE 00 30 */ lwz r5, 0x30(r30)
/* 80249E30 00246D90 38 60 00 00 */ li r3, 0
/* 80249E34 00246D94 2C 05 00 00 */ cmpwi r5, 0
/* 80249E38 00246D98 40 81 00 40 */ ble lbl_80249E78
/* 80249E3C 00246D9C 2C 05 00 08 */ cmpwi r5, 8
/* 80249E40 00246DA0 38 85 FF F8 */ addi r4, r5, -8
/* 80249E44 00246DA4 40 81 00 20 */ ble lbl_80249E64
/* 80249E48 00246DA8 38 04 00 07 */ addi r0, r4, 7
/* 80249E4C 00246DAC 54 00 E8 FE */ srwi r0, r0, 3
/* 80249E50 00246DB0 7C 09 03 A6 */ mtctr r0
/* 80249E54 00246DB4 2C 04 00 00 */ cmpwi r4, 0
/* 80249E58 00246DB8 40 81 00 0C */ ble lbl_80249E64
lbl_80249E5C:
/* 80249E5C 00246DBC 38 63 00 08 */ addi r3, r3, 8
/* 80249E60 00246DC0 42 00 FF FC */ bdnz lbl_80249E5C
lbl_80249E64:
/* 80249E64 00246DC4 7C 03 28 50 */ subf r0, r3, r5
/* 80249E68 00246DC8 7C 09 03 A6 */ mtctr r0
/* 80249E6C 00246DCC 7C 03 28 00 */ cmpw r3, r5
/* 80249E70 00246DD0 40 80 00 08 */ bge lbl_80249E78
lbl_80249E74:
/* 80249E74 00246DD4 42 00 00 00 */ bdnz lbl_80249E74
lbl_80249E78:
/* 80249E78 00246DD8 38 00 00 00 */ li r0, 0
/* 80249E7C 00246DDC 90 1E 00 30 */ stw r0, 0x30(r30)
lbl_80249E80:
/* 80249E80 00246DE0 34 1E 00 20 */ addic. r0, r30, 0x20
/* 80249E84 00246DE4 41 82 00 44 */ beq lbl_80249EC8
/* 80249E88 00246DE8 80 1E 00 24 */ lwz r0, 0x24(r30)
/* 80249E8C 00246DEC 80 7E 00 2C */ lwz r3, 0x2c(r30)
/* 80249E90 00246DF0 54 00 18 38 */ slwi r0, r0, 3
/* 80249E94 00246DF4 7C 03 02 14 */ add r0, r3, r0
/* 80249E98 00246DF8 90 61 00 0C */ stw r3, 0xc(r1)
/* 80249E9C 00246DFC 7C 64 1B 78 */ mr r4, r3
/* 80249EA0 00246E00 90 01 00 14 */ stw r0, 0x14(r1)
/* 80249EA4 00246E04 90 01 00 10 */ stw r0, 0x10(r1)
/* 80249EA8 00246E08 90 61 00 08 */ stw r3, 8(r1)
/* 80249EAC 00246E0C 48 00 00 08 */ b lbl_80249EB4
lbl_80249EB0:
/* 80249EB0 00246E10 38 84 00 08 */ addi r4, r4, 8
lbl_80249EB4:
/* 80249EB4 00246E14 7C 04 00 40 */ cmplw r4, r0
/* 80249EB8 00246E18 40 82 FF F8 */ bne lbl_80249EB0
/* 80249EBC 00246E1C 28 03 00 00 */ cmplwi r3, 0
/* 80249EC0 00246E20 41 82 00 08 */ beq lbl_80249EC8
/* 80249EC4 00246E24 48 0C BA 6D */ bl Free__7CMemoryFPCv
lbl_80249EC8:
/* 80249EC8 00246E28 38 7E 00 1C */ addi r3, r30, 0x1c
/* 80249ECC 00246E2C 38 80 FF FF */ li r4, -1
/* 80249ED0 00246E30 48 00 02 E5 */ bl sub_8024a1b4
/* 80249ED4 00246E34 38 7E 00 0C */ addi r3, r30, 0xc
/* 80249ED8 00246E38 38 80 FF FF */ li r4, -1
/* 80249EDC 00246E3C 48 00 00 49 */ bl sub_80249f24
/* 80249EE0 00246E40 28 1E 00 00 */ cmplwi r30, 0
/* 80249EE4 00246E44 41 82 00 14 */ beq lbl_80249EF8
/* 80249EE8 00246E48 41 82 00 10 */ beq lbl_80249EF8
/* 80249EEC 00246E4C 7F C3 F3 78 */ mr r3, r30
/* 80249EF0 00246E50 38 80 00 00 */ li r4, 0
/* 80249EF4 00246E54 48 0F 6F 4D */ bl __dt__6CTokenFv
lbl_80249EF8:
/* 80249EF8 00246E58 7F E0 07 35 */ extsh. r0, r31
/* 80249EFC 00246E5C 40 81 00 0C */ ble lbl_80249F08
/* 80249F00 00246E60 7F C3 F3 78 */ mr r3, r30
/* 80249F04 00246E64 48 0C BA 2D */ bl Free__7CMemoryFPCv
lbl_80249F08:
/* 80249F08 00246E68 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80249F0C 00246E6C 7F C3 F3 78 */ mr r3, r30
/* 80249F10 00246E70 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80249F14 00246E74 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80249F18 00246E78 7C 08 03 A6 */ mtlr r0
/* 80249F1C 00246E7C 38 21 00 20 */ addi r1, r1, 0x20
/* 80249F20 00246E80 4E 80 00 20 */ blr
.global sub_80249f24
sub_80249f24:
/* 80249F24 00246E84 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80249F28 00246E88 7C 08 02 A6 */ mflr r0
/* 80249F2C 00246E8C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80249F30 00246E90 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80249F34 00246E94 7C 9F 23 78 */ mr r31, r4
/* 80249F38 00246E98 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80249F3C 00246E9C 7C 7E 1B 79 */ or. r30, r3, r3
/* 80249F40 00246EA0 41 82 00 54 */ beq lbl_80249F94
/* 80249F44 00246EA4 80 1E 00 04 */ lwz r0, 4(r30)
/* 80249F48 00246EA8 38 61 00 14 */ addi r3, r1, 0x14
/* 80249F4C 00246EAC 80 BE 00 0C */ lwz r5, 0xc(r30)
/* 80249F50 00246EB0 38 81 00 0C */ addi r4, r1, 0xc
/* 80249F54 00246EB4 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 80249F58 00246EB8 7C A5 02 14 */ add r5, r5, r0
/* 80249F5C 00246EBC 90 A1 00 0C */ stw r5, 0xc(r1)
/* 80249F60 00246EC0 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 80249F64 00246EC4 90 A1 00 08 */ stw r5, 8(r1)
/* 80249F68 00246EC8 90 01 00 10 */ stw r0, 0x10(r1)
/* 80249F6C 00246ECC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80249F70 00246ED0 48 00 00 41 */ bl sub_80249fb0
/* 80249F74 00246ED4 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 80249F78 00246ED8 28 03 00 00 */ cmplwi r3, 0
/* 80249F7C 00246EDC 41 82 00 08 */ beq lbl_80249F84
/* 80249F80 00246EE0 48 0C B9 B1 */ bl Free__7CMemoryFPCv
lbl_80249F84:
/* 80249F84 00246EE4 7F E0 07 35 */ extsh. r0, r31
/* 80249F88 00246EE8 40 81 00 0C */ ble lbl_80249F94
/* 80249F8C 00246EEC 7F C3 F3 78 */ mr r3, r30
/* 80249F90 00246EF0 48 0C B9 A1 */ bl Free__7CMemoryFPCv
lbl_80249F94:
/* 80249F94 00246EF4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80249F98 00246EF8 7F C3 F3 78 */ mr r3, r30
/* 80249F9C 00246EFC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80249FA0 00246F00 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80249FA4 00246F04 7C 08 03 A6 */ mtlr r0
/* 80249FA8 00246F08 38 21 00 20 */ addi r1, r1, 0x20
/* 80249FAC 00246F0C 4E 80 00 20 */ blr
.global sub_80249fb0
sub_80249fb0:
/* 80249FB0 00246F10 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80249FB4 00246F14 7C 08 02 A6 */ mflr r0
/* 80249FB8 00246F18 90 01 00 14 */ stw r0, 0x14(r1)
/* 80249FBC 00246F1C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80249FC0 00246F20 93 C1 00 08 */ stw r30, 8(r1)
/* 80249FC4 00246F24 7C 9E 23 78 */ mr r30, r4
/* 80249FC8 00246F28 83 E3 00 00 */ lwz r31, 0(r3)
/* 80249FCC 00246F2C 48 00 00 10 */ b lbl_80249FDC
lbl_80249FD0:
/* 80249FD0 00246F30 7F E3 FB 78 */ mr r3, r31
/* 80249FD4 00246F34 48 00 00 2D */ bl sub_8024a000
/* 80249FD8 00246F38 3B FF 00 4C */ addi r31, r31, 0x4c
lbl_80249FDC:
/* 80249FDC 00246F3C 80 1E 00 00 */ lwz r0, 0(r30)
/* 80249FE0 00246F40 7C 1F 00 40 */ cmplw r31, r0
/* 80249FE4 00246F44 40 82 FF EC */ bne lbl_80249FD0
/* 80249FE8 00246F48 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80249FEC 00246F4C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80249FF0 00246F50 83 C1 00 08 */ lwz r30, 8(r1)
/* 80249FF4 00246F54 7C 08 03 A6 */ mtlr r0
/* 80249FF8 00246F58 38 21 00 10 */ addi r1, r1, 0x10
/* 80249FFC 00246F5C 4E 80 00 20 */ blr
.global sub_8024a000
sub_8024a000:
/* 8024A000 00246F60 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024A004 00246F64 7C 08 02 A6 */ mflr r0
/* 8024A008 00246F68 38 80 FF FF */ li r4, -1
/* 8024A00C 00246F6C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024A010 00246F70 48 00 00 15 */ bl sub_8024a024
/* 8024A014 00246F74 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024A018 00246F78 7C 08 03 A6 */ mtlr r0
/* 8024A01C 00246F7C 38 21 00 10 */ addi r1, r1, 0x10
/* 8024A020 00246F80 4E 80 00 20 */ blr
.global sub_8024a024
sub_8024a024:
/* 8024A024 00246F84 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024A028 00246F88 7C 08 02 A6 */ mflr r0
/* 8024A02C 00246F8C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024A030 00246F90 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024A034 00246F94 7C 9F 23 78 */ mr r31, r4
/* 8024A038 00246F98 93 C1 00 08 */ stw r30, 8(r1)
/* 8024A03C 00246F9C 7C 7E 1B 79 */ or. r30, r3, r3
/* 8024A040 00246FA0 41 82 00 20 */ beq lbl_8024A060
/* 8024A044 00246FA4 38 7E 00 04 */ addi r3, r30, 4
/* 8024A048 00246FA8 38 80 FF FF */ li r4, -1
/* 8024A04C 00246FAC 48 00 00 31 */ bl sub_8024a07c
/* 8024A050 00246FB0 7F E0 07 35 */ extsh. r0, r31
/* 8024A054 00246FB4 40 81 00 0C */ ble lbl_8024A060
/* 8024A058 00246FB8 7F C3 F3 78 */ mr r3, r30
/* 8024A05C 00246FBC 48 0C B8 D5 */ bl Free__7CMemoryFPCv
lbl_8024A060:
/* 8024A060 00246FC0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024A064 00246FC4 7F C3 F3 78 */ mr r3, r30
/* 8024A068 00246FC8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024A06C 00246FCC 83 C1 00 08 */ lwz r30, 8(r1)
/* 8024A070 00246FD0 7C 08 03 A6 */ mtlr r0
/* 8024A074 00246FD4 38 21 00 10 */ addi r1, r1, 0x10
/* 8024A078 00246FD8 4E 80 00 20 */ blr
.global sub_8024a07c
sub_8024a07c:
/* 8024A07C 00246FDC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8024A080 00246FE0 7C 08 02 A6 */ mflr r0
/* 8024A084 00246FE4 90 01 00 34 */ stw r0, 0x34(r1)
/* 8024A088 00246FE8 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8024A08C 00246FEC 7C 9F 23 78 */ mr r31, r4
/* 8024A090 00246FF0 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8024A094 00246FF4 7C 7E 1B 79 */ or. r30, r3, r3
/* 8024A098 00246FF8 41 82 01 00 */ beq lbl_8024A198
/* 8024A09C 00246FFC 34 1E 00 3C */ addic. r0, r30, 0x3c
/* 8024A0A0 00247000 41 82 00 24 */ beq lbl_8024A0C4
/* 8024A0A4 00247004 88 1E 00 44 */ lbz r0, 0x44(r30)
/* 8024A0A8 00247008 28 00 00 00 */ cmplwi r0, 0
/* 8024A0AC 0024700C 41 82 00 10 */ beq lbl_8024A0BC
/* 8024A0B0 00247010 38 7E 00 3C */ addi r3, r30, 0x3c
/* 8024A0B4 00247014 38 80 FF FF */ li r4, -1
/* 8024A0B8 00247018 48 0F 6D 89 */ bl __dt__6CTokenFv
lbl_8024A0BC:
/* 8024A0BC 0024701C 38 00 00 00 */ li r0, 0
/* 8024A0C0 00247020 98 1E 00 44 */ stb r0, 0x44(r30)
lbl_8024A0C4:
/* 8024A0C4 00247024 34 1E 00 2C */ addic. r0, r30, 0x2c
/* 8024A0C8 00247028 41 82 00 30 */ beq lbl_8024A0F8
/* 8024A0CC 0024702C 88 1E 00 38 */ lbz r0, 0x38(r30)
/* 8024A0D0 00247030 28 00 00 00 */ cmplwi r0, 0
/* 8024A0D4 00247034 41 82 00 1C */ beq lbl_8024A0F0
/* 8024A0D8 00247038 34 7E 00 2C */ addic. r3, r30, 0x2c
/* 8024A0DC 0024703C 41 82 00 14 */ beq lbl_8024A0F0
/* 8024A0E0 00247040 28 03 00 00 */ cmplwi r3, 0
/* 8024A0E4 00247044 41 82 00 0C */ beq lbl_8024A0F0
/* 8024A0E8 00247048 38 80 00 00 */ li r4, 0
/* 8024A0EC 0024704C 48 0F 6D 55 */ bl __dt__6CTokenFv
lbl_8024A0F0:
/* 8024A0F0 00247050 38 00 00 00 */ li r0, 0
/* 8024A0F4 00247054 98 1E 00 38 */ stb r0, 0x38(r30)
lbl_8024A0F8:
/* 8024A0F8 00247058 34 1E 00 1C */ addic. r0, r30, 0x1c
/* 8024A0FC 0024705C 41 82 00 44 */ beq lbl_8024A140
/* 8024A100 00247060 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 8024A104 00247064 80 7E 00 28 */ lwz r3, 0x28(r30)
/* 8024A108 00247068 54 00 20 36 */ slwi r0, r0, 4
/* 8024A10C 0024706C 7C 03 02 14 */ add r0, r3, r0
/* 8024A110 00247070 90 61 00 1C */ stw r3, 0x1c(r1)
/* 8024A114 00247074 7C 64 1B 78 */ mr r4, r3
/* 8024A118 00247078 90 01 00 24 */ stw r0, 0x24(r1)
/* 8024A11C 0024707C 90 01 00 20 */ stw r0, 0x20(r1)
/* 8024A120 00247080 90 61 00 18 */ stw r3, 0x18(r1)
/* 8024A124 00247084 48 00 00 08 */ b lbl_8024A12C
lbl_8024A128:
/* 8024A128 00247088 38 84 00 10 */ addi r4, r4, 0x10
lbl_8024A12C:
/* 8024A12C 0024708C 7C 04 00 40 */ cmplw r4, r0
/* 8024A130 00247090 40 82 FF F8 */ bne lbl_8024A128
/* 8024A134 00247094 28 03 00 00 */ cmplwi r3, 0
/* 8024A138 00247098 41 82 00 08 */ beq lbl_8024A140
/* 8024A13C 0024709C 48 0C B7 F5 */ bl Free__7CMemoryFPCv
lbl_8024A140:
/* 8024A140 002470A0 34 1E 00 0C */ addic. r0, r30, 0xc
/* 8024A144 002470A4 41 82 00 44 */ beq lbl_8024A188
/* 8024A148 002470A8 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 8024A14C 002470AC 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 8024A150 002470B0 54 00 10 3A */ slwi r0, r0, 2
/* 8024A154 002470B4 7C 03 02 14 */ add r0, r3, r0
/* 8024A158 002470B8 90 61 00 0C */ stw r3, 0xc(r1)
/* 8024A15C 002470BC 7C 64 1B 78 */ mr r4, r3
/* 8024A160 002470C0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024A164 002470C4 90 01 00 10 */ stw r0, 0x10(r1)
/* 8024A168 002470C8 90 61 00 08 */ stw r3, 8(r1)
/* 8024A16C 002470CC 48 00 00 08 */ b lbl_8024A174
lbl_8024A170:
/* 8024A170 002470D0 38 84 00 04 */ addi r4, r4, 4
lbl_8024A174:
/* 8024A174 002470D4 7C 04 00 40 */ cmplw r4, r0
/* 8024A178 002470D8 40 82 FF F8 */ bne lbl_8024A170
/* 8024A17C 002470DC 28 03 00 00 */ cmplwi r3, 0
/* 8024A180 002470E0 41 82 00 08 */ beq lbl_8024A188
/* 8024A184 002470E4 48 0C B7 AD */ bl Free__7CMemoryFPCv
lbl_8024A188:
/* 8024A188 002470E8 7F E0 07 35 */ extsh. r0, r31
/* 8024A18C 002470EC 40 81 00 0C */ ble lbl_8024A198
/* 8024A190 002470F0 7F C3 F3 78 */ mr r3, r30
/* 8024A194 002470F4 48 0C B7 9D */ bl Free__7CMemoryFPCv
lbl_8024A198:
/* 8024A198 002470F8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8024A19C 002470FC 7F C3 F3 78 */ mr r3, r30
/* 8024A1A0 00247100 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8024A1A4 00247104 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8024A1A8 00247108 7C 08 03 A6 */ mtlr r0
/* 8024A1AC 0024710C 38 21 00 30 */ addi r1, r1, 0x30
/* 8024A1B0 00247110 4E 80 00 20 */ blr
.global sub_8024a1b4
sub_8024a1b4:
/* 8024A1B4 00247114 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024A1B8 00247118 7C 08 02 A6 */ mflr r0
/* 8024A1BC 0024711C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024A1C0 00247120 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024A1C4 00247124 7C 9F 23 78 */ mr r31, r4
/* 8024A1C8 00247128 93 C1 00 08 */ stw r30, 8(r1)
/* 8024A1CC 0024712C 7C 7E 1B 79 */ or. r30, r3, r3
/* 8024A1D0 00247130 41 82 00 20 */ beq lbl_8024A1F0
/* 8024A1D4 00247134 80 7E 00 00 */ lwz r3, 0(r30)
/* 8024A1D8 00247138 38 80 00 01 */ li r4, 1
/* 8024A1DC 0024713C 4B FF F3 D1 */ bl sub_802495ac
/* 8024A1E0 00247140 7F E0 07 35 */ extsh. r0, r31
/* 8024A1E4 00247144 40 81 00 0C */ ble lbl_8024A1F0
/* 8024A1E8 00247148 7F C3 F3 78 */ mr r3, r30
/* 8024A1EC 0024714C 48 0C B7 45 */ bl Free__7CMemoryFPCv
lbl_8024A1F0:
/* 8024A1F0 00247150 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024A1F4 00247154 7F C3 F3 78 */ mr r3, r30
/* 8024A1F8 00247158 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024A1FC 0024715C 83 C1 00 08 */ lwz r30, 8(r1)
/* 8024A200 00247160 7C 08 03 A6 */ mtlr r0
/* 8024A204 00247164 38 21 00 10 */ addi r1, r1, 0x10
/* 8024A208 00247168 4E 80 00 20 */ blr
.global __ct__14CMemoryCardSysFv
__ct__14CMemoryCardSysFv:
/* 8024A20C 0024716C 94 21 FE B0 */ stwu r1, -0x150(r1)
/* 8024A210 00247170 7C 08 02 A6 */ mflr r0
/* 8024A214 00247174 3C A0 80 3D */ lis r5, lbl_803D4780@ha
/* 8024A218 00247178 90 01 01 54 */ stw r0, 0x154(r1)
/* 8024A21C 0024717C 38 A5 47 80 */ addi r5, r5, lbl_803D4780@l
/* 8024A220 00247180 38 A5 00 07 */ addi r5, r5, 7
/* 8024A224 00247184 BF 41 01 38 */ stmw r26, 0x138(r1)
/* 8024A228 00247188 7C 7D 1B 78 */ mr r29, r3
/* 8024A22C 0024718C 38 61 00 38 */ addi r3, r1, 0x38
/* 8024A230 00247190 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8024A234 00247194 81 84 00 00 */ lwz r12, 0(r4)
/* 8024A238 00247198 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 8024A23C 0024719C 7D 89 03 A6 */ mtctr r12
/* 8024A240 002471A0 4E 80 04 21 */ bctrl
/* 8024A244 002471A4 7F A3 EB 78 */ mr r3, r29
/* 8024A248 002471A8 38 81 00 38 */ addi r4, r1, 0x38
/* 8024A24C 002471AC 48 0F 6C 5D */ bl __ct__6CTokenFRC6CToken
/* 8024A250 002471B0 38 00 00 00 */ li r0, 0
/* 8024A254 002471B4 38 61 00 38 */ addi r3, r1, 0x38
/* 8024A258 002471B8 90 1D 00 08 */ stw r0, 8(r29)
/* 8024A25C 002471BC 38 80 FF FF */ li r4, -1
/* 8024A260 002471C0 48 0F 6B E1 */ bl __dt__6CTokenFv
/* 8024A264 002471C4 38 60 00 00 */ li r3, 0
/* 8024A268 002471C8 34 9D 00 34 */ addic. r4, r29, 0x34
/* 8024A26C 002471CC 90 7D 00 10 */ stw r3, 0x10(r29)
/* 8024A270 002471D0 38 00 00 06 */ li r0, 6
/* 8024A274 002471D4 90 7D 00 14 */ stw r3, 0x14(r29)
/* 8024A278 002471D8 90 7D 00 18 */ stw r3, 0x18(r29)
/* 8024A27C 002471DC 90 7D 00 1C */ stw r3, 0x1c(r29)
/* 8024A280 002471E0 90 7D 00 24 */ stw r3, 0x24(r29)
/* 8024A284 002471E4 90 7D 00 28 */ stw r3, 0x28(r29)
/* 8024A288 002471E8 90 7D 00 2C */ stw r3, 0x2c(r29)
/* 8024A28C 002471EC 90 1D 00 30 */ stw r0, 0x30(r29)
/* 8024A290 002471F0 41 82 00 0C */ beq lbl_8024A29C
/* 8024A294 002471F4 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13)
/* 8024A298 002471F8 90 04 00 00 */ stw r0, 0(r4)
lbl_8024A29C:
/* 8024A29C 002471FC 34 84 00 04 */ addic. r4, r4, 4
/* 8024A2A0 00247200 41 82 00 0C */ beq lbl_8024A2AC
/* 8024A2A4 00247204 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13)
/* 8024A2A8 00247208 90 04 00 00 */ stw r0, 0(r4)
lbl_8024A2AC:
/* 8024A2AC 0024720C 34 84 00 04 */ addic. r4, r4, 4
/* 8024A2B0 00247210 41 82 00 0C */ beq lbl_8024A2BC
/* 8024A2B4 00247214 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13)
/* 8024A2B8 00247218 90 04 00 00 */ stw r0, 0(r4)
lbl_8024A2BC:
/* 8024A2BC 0024721C 34 84 00 04 */ addic. r4, r4, 4
/* 8024A2C0 00247220 41 82 00 0C */ beq lbl_8024A2CC
/* 8024A2C4 00247224 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13)
/* 8024A2C8 00247228 90 04 00 00 */ stw r0, 0(r4)
lbl_8024A2CC:
/* 8024A2CC 0024722C 34 84 00 04 */ addic. r4, r4, 4
/* 8024A2D0 00247230 41 82 00 0C */ beq lbl_8024A2DC
/* 8024A2D4 00247234 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13)
/* 8024A2D8 00247238 90 04 00 00 */ stw r0, 0(r4)
lbl_8024A2DC:
/* 8024A2DC 0024723C 34 84 00 04 */ addic. r4, r4, 4
/* 8024A2E0 00247240 41 82 00 0C */ beq lbl_8024A2EC
/* 8024A2E4 00247244 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13)
/* 8024A2E8 00247248 90 04 00 00 */ stw r0, 0(r4)
lbl_8024A2EC:
/* 8024A2EC 0024724C 7F A3 EB 78 */ mr r3, r29
/* 8024A2F0 00247250 48 0F 6A 95 */ bl Lock__6CTokenFv
/* 8024A2F4 00247254 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024A2F8 00247258 38 60 00 10 */ li r3, 0x10
/* 8024A2FC 0024725C 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024A300 00247260 38 A0 00 00 */ li r5, 0
/* 8024A304 00247264 48 0C B5 69 */ bl __nw__FUlPCcPCc
/* 8024A308 00247268 28 03 00 00 */ cmplwi r3, 0
/* 8024A30C 0024726C 41 82 00 14 */ beq lbl_8024A320
/* 8024A310 00247270 38 00 00 00 */ li r0, 0
/* 8024A314 00247274 90 03 00 04 */ stw r0, 4(r3)
/* 8024A318 00247278 90 03 00 08 */ stw r0, 8(r3)
/* 8024A31C 0024727C 90 03 00 0C */ stw r0, 0xc(r3)
lbl_8024A320:
/* 8024A320 00247280 7C 64 1B 78 */ mr r4, r3
/* 8024A324 00247284 38 7D 00 1C */ addi r3, r29, 0x1c
/* 8024A328 00247288 4B FF F2 3D */ bl sub_80249564
/* 8024A32C 0024728C 83 FD 00 1C */ lwz r31, 0x1c(r29)
/* 8024A330 00247290 38 7D 00 0C */ addi r3, r29, 0xc
/* 8024A334 00247294 38 80 00 10 */ li r4, 0x10
/* 8024A338 00247298 48 00 0C 51 */ bl sub_8024af88
/* 8024A33C 0024729C 7F E3 FB 78 */ mr r3, r31
/* 8024A340 002472A0 38 80 00 10 */ li r4, 0x10
/* 8024A344 002472A4 48 00 0D 7D */ bl sub_8024b0c0
/* 8024A348 002472A8 80 8D A0 60 */ lwz r4, gpResourceFactory@sda21(r13)
/* 8024A34C 002472AC 38 61 00 40 */ addi r3, r1, 0x40
/* 8024A350 002472B0 4B FD 29 1D */ bl sub_8021cc6c
/* 8024A354 002472B4 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8024A358 002472B8 80 61 00 48 */ lwz r3, 0x48(r1)
/* 8024A35C 002472BC 2C 00 00 00 */ cmpwi r0, 0
/* 8024A360 002472C0 90 01 00 54 */ stw r0, 0x54(r1)
/* 8024A364 002472C4 90 61 00 58 */ stw r3, 0x58(r1)
/* 8024A368 002472C8 40 82 00 18 */ bne lbl_8024A380
/* 8024A36C 002472CC 2C 03 00 00 */ cmpwi r3, 0
/* 8024A370 002472D0 40 82 00 10 */ bne lbl_8024A380
/* 8024A374 002472D4 38 00 00 00 */ li r0, 0
/* 8024A378 002472D8 90 01 00 5C */ stw r0, 0x5c(r1)
/* 8024A37C 002472DC 48 00 00 80 */ b lbl_8024A3FC
lbl_8024A380:
/* 8024A380 002472E0 80 01 00 58 */ lwz r0, 0x58(r1)
/* 8024A384 002472E4 1C 60 00 18 */ mulli r3, r0, 0x18
/* 8024A388 002472E8 2C 03 00 00 */ cmpwi r3, 0
/* 8024A38C 002472EC 40 82 00 10 */ bne lbl_8024A39C
/* 8024A390 002472F0 38 00 00 00 */ li r0, 0
/* 8024A394 002472F4 90 01 00 5C */ stw r0, 0x5c(r1)
/* 8024A398 002472F8 48 00 00 18 */ b lbl_8024A3B0
lbl_8024A39C:
/* 8024A39C 002472FC 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024A3A0 00247300 38 A0 00 00 */ li r5, 0
/* 8024A3A4 00247304 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024A3A8 00247308 48 0C B4 71 */ bl __nwa__FUlPCcPCc
/* 8024A3AC 0024730C 90 61 00 5C */ stw r3, 0x5c(r1)
lbl_8024A3B0:
/* 8024A3B0 00247310 83 41 00 54 */ lwz r26, 0x54(r1)
/* 8024A3B4 00247314 3B C0 00 00 */ li r30, 0
/* 8024A3B8 00247318 83 61 00 4C */ lwz r27, 0x4c(r1)
/* 8024A3BC 0024731C 83 81 00 5C */ lwz r28, 0x5c(r1)
/* 8024A3C0 00247320 48 00 00 34 */ b lbl_8024A3F4
lbl_8024A3C4:
/* 8024A3C4 00247324 28 1C 00 00 */ cmplwi r28, 0
/* 8024A3C8 00247328 41 82 00 20 */ beq lbl_8024A3E8
/* 8024A3CC 0024732C 7F 83 E3 78 */ mr r3, r28
/* 8024A3D0 00247330 7F 64 DB 78 */ mr r4, r27
/* 8024A3D4 00247334 48 0F 3D 8D */ bl "__ct__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 8024A3D8 00247338 80 1B 00 10 */ lwz r0, 0x10(r27)
/* 8024A3DC 0024733C 90 1C 00 10 */ stw r0, 0x10(r28)
/* 8024A3E0 00247340 80 1B 00 14 */ lwz r0, 0x14(r27)
/* 8024A3E4 00247344 90 1C 00 14 */ stw r0, 0x14(r28)
lbl_8024A3E8:
/* 8024A3E8 00247348 3B 9C 00 18 */ addi r28, r28, 0x18
/* 8024A3EC 0024734C 3B DE 00 01 */ addi r30, r30, 1
/* 8024A3F0 00247350 3B 7B 00 18 */ addi r27, r27, 0x18
lbl_8024A3F4:
/* 8024A3F4 00247354 7C 1E D0 00 */ cmpw r30, r26
/* 8024A3F8 00247358 41 80 FF CC */ blt lbl_8024A3C4
lbl_8024A3FC:
/* 8024A3FC 0024735C 38 61 00 40 */ addi r3, r1, 0x40
/* 8024A400 00247360 38 80 FF FF */ li r4, -1
/* 8024A404 00247364 4B DB A5 E9 */ bl sub_800049ec
/* 8024A408 00247368 83 C1 00 5C */ lwz r30, 0x5c(r1)
/* 8024A40C 0024736C 48 00 01 40 */ b lbl_8024A54C
lbl_8024A410:
/* 8024A410 00247370 80 9E 00 14 */ lwz r4, 0x14(r30)
/* 8024A414 00247374 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13)
/* 8024A418 00247378 90 81 00 34 */ stw r4, 0x34(r1)
/* 8024A41C 0024737C 38 63 00 04 */ addi r3, r3, 4
/* 8024A420 00247380 48 0F 18 AD */ bl GetResourceTypeById__10CResLoaderCFUi
/* 8024A424 00247384 3C 03 B2 B4 */ addis r0, r3, 0xb2b4
/* 8024A428 00247388 28 00 56 4C */ cmplwi r0, 0x564c
/* 8024A42C 0024738C 40 82 01 1C */ bne lbl_8024A548
/* 8024A430 00247390 89 21 00 08 */ lbz r9, 8(r1)
/* 8024A434 00247394 38 61 00 2C */ addi r3, r1, 0x2c
/* 8024A438 00247398 38 81 00 28 */ addi r4, r1, 0x28
/* 8024A43C 0024739C 38 A1 00 20 */ addi r5, r1, 0x20
/* 8024A440 002473A0 99 21 00 10 */ stb r9, 0x10(r1)
/* 8024A444 002473A4 38 C1 00 34 */ addi r6, r1, 0x34
/* 8024A448 002473A8 38 E1 00 10 */ addi r7, r1, 0x10
/* 8024A44C 002473AC 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 8024A450 002473B0 81 1D 00 18 */ lwz r8, 0x18(r29)
/* 8024A454 002473B4 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 8024A458 002473B8 99 21 00 0C */ stb r9, 0xc(r1)
/* 8024A45C 002473BC 7D 08 02 14 */ add r8, r8, r0
/* 8024A460 002473C0 91 01 00 20 */ stw r8, 0x20(r1)
/* 8024A464 002473C4 80 1D 00 18 */ lwz r0, 0x18(r29)
/* 8024A468 002473C8 91 01 00 1C */ stw r8, 0x1c(r1)
/* 8024A46C 002473CC 90 01 00 24 */ stw r0, 0x24(r1)
/* 8024A470 002473D0 90 01 00 28 */ stw r0, 0x28(r1)
/* 8024A474 002473D4 48 00 09 95 */ bl sub_8024ae08
/* 8024A478 002473D8 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 8024A47C 002473DC 80 81 00 2C */ lwz r4, 0x2c(r1)
/* 8024A480 002473E0 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 8024A484 002473E4 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 8024A488 002473E8 90 81 00 30 */ stw r4, 0x30(r1)
/* 8024A48C 002473EC 7C 03 02 14 */ add r0, r3, r0
/* 8024A490 002473F0 7C 04 00 40 */ cmplw r4, r0
/* 8024A494 002473F4 41 82 00 14 */ beq lbl_8024A4A8
/* 8024A498 002473F8 80 61 00 34 */ lwz r3, 0x34(r1)
/* 8024A49C 002473FC 80 04 00 00 */ lwz r0, 0(r4)
/* 8024A4A0 00247400 7C 03 00 40 */ cmplw r3, r0
/* 8024A4A4 00247404 41 82 00 A4 */ beq lbl_8024A548
lbl_8024A4A8:
/* 8024A4A8 00247408 38 00 00 00 */ li r0, 0
/* 8024A4AC 0024740C 38 C0 FF FF */ li r6, -1
/* 8024A4B0 00247410 90 C1 00 E8 */ stw r6, 0xe8(r1)
/* 8024A4B4 00247414 38 61 00 9C */ addi r3, r1, 0x9c
/* 8024A4B8 00247418 38 81 00 34 */ addi r4, r1, 0x34
/* 8024A4BC 0024741C 38 A1 00 E8 */ addi r5, r1, 0xe8
/* 8024A4C0 00247420 90 C1 00 EC */ stw r6, 0xec(r1)
/* 8024A4C4 00247424 90 01 00 F0 */ stw r0, 0xf0(r1)
/* 8024A4C8 00247428 90 01 00 F8 */ stw r0, 0xf8(r1)
/* 8024A4CC 0024742C 90 01 00 FC */ stw r0, 0xfc(r1)
/* 8024A4D0 00247430 90 01 01 00 */ stw r0, 0x100(r1)
/* 8024A4D4 00247434 90 01 01 08 */ stw r0, 0x108(r1)
/* 8024A4D8 00247438 90 01 01 0C */ stw r0, 0x10c(r1)
/* 8024A4DC 0024743C 90 01 01 10 */ stw r0, 0x110(r1)
/* 8024A4E0 00247440 98 01 01 20 */ stb r0, 0x120(r1)
/* 8024A4E4 00247444 98 01 01 2C */ stb r0, 0x12c(r1)
/* 8024A4E8 00247448 48 00 08 85 */ bl sub_8024ad6c
/* 8024A4EC 0024744C 80 01 00 30 */ lwz r0, 0x30(r1)
/* 8024A4F0 00247450 38 61 00 18 */ addi r3, r1, 0x18
/* 8024A4F4 00247454 38 9D 00 0C */ addi r4, r29, 0xc
/* 8024A4F8 00247458 38 A1 00 14 */ addi r5, r1, 0x14
/* 8024A4FC 0024745C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024A500 00247460 38 C1 00 9C */ addi r6, r1, 0x9c
/* 8024A504 00247464 48 00 02 DD */ bl sub_8024a7e0
/* 8024A508 00247468 38 61 00 9C */ addi r3, r1, 0x9c
/* 8024A50C 0024746C 38 80 FF FF */ li r4, -1
/* 8024A510 00247470 4B FF FB 15 */ bl sub_8024a024
/* 8024A514 00247474 38 61 00 E8 */ addi r3, r1, 0xe8
/* 8024A518 00247478 38 80 FF FF */ li r4, -1
/* 8024A51C 0024747C 4B FF FB 61 */ bl sub_8024a07c
/* 8024A520 00247480 80 81 00 34 */ lwz r4, 0x34(r1)
/* 8024A524 00247484 38 61 00 60 */ addi r3, r1, 0x60
/* 8024A528 00247488 38 A0 FF FF */ li r5, -1
/* 8024A52C 0024748C 4B FF F6 7D */ bl __ct__20CMemorySomethingElseFUiUi
/* 8024A530 00247490 7F E3 FB 78 */ mr r3, r31
/* 8024A534 00247494 38 81 00 60 */ addi r4, r1, 0x60
/* 8024A538 00247498 48 00 00 51 */ bl sub_8024a588
/* 8024A53C 0024749C 38 61 00 60 */ addi r3, r1, 0x60
/* 8024A540 002474A0 38 80 FF FF */ li r4, -1
/* 8024A544 002474A4 4B FF F1 69 */ bl sub_802496ac
lbl_8024A548:
/* 8024A548 002474A8 3B DE 00 18 */ addi r30, r30, 0x18
lbl_8024A54C:
/* 8024A54C 002474AC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8024A550 002474B0 80 61 00 5C */ lwz r3, 0x5c(r1)
/* 8024A554 002474B4 1C 00 00 18 */ mulli r0, r0, 0x18
/* 8024A558 002474B8 7C 03 02 14 */ add r0, r3, r0
/* 8024A55C 002474BC 7C 1E 00 40 */ cmplw r30, r0
/* 8024A560 002474C0 40 82 FE B0 */ bne lbl_8024A410
/* 8024A564 002474C4 38 61 00 50 */ addi r3, r1, 0x50
/* 8024A568 002474C8 38 80 FF FF */ li r4, -1
/* 8024A56C 002474CC 4B DB A4 81 */ bl sub_800049ec
/* 8024A570 002474D0 7F A3 EB 78 */ mr r3, r29
/* 8024A574 002474D4 BB 41 01 38 */ lmw r26, 0x138(r1)
/* 8024A578 002474D8 80 01 01 54 */ lwz r0, 0x154(r1)
/* 8024A57C 002474DC 7C 08 03 A6 */ mtlr r0
/* 8024A580 002474E0 38 21 01 50 */ addi r1, r1, 0x150
/* 8024A584 002474E4 4E 80 00 20 */ blr
.global sub_8024a588
sub_8024a588:
/* 8024A588 002474E8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024A58C 002474EC 7C 08 02 A6 */ mflr r0
/* 8024A590 002474F0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024A594 002474F4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024A598 002474F8 7C 9F 23 78 */ mr r31, r4
/* 8024A59C 002474FC 93 C1 00 08 */ stw r30, 8(r1)
/* 8024A5A0 00247500 7C 7E 1B 78 */ mr r30, r3
/* 8024A5A4 00247504 80 03 00 04 */ lwz r0, 4(r3)
/* 8024A5A8 00247508 80 A3 00 08 */ lwz r5, 8(r3)
/* 8024A5AC 0024750C 7C 00 28 00 */ cmpw r0, r5
/* 8024A5B0 00247510 41 80 00 18 */ blt lbl_8024A5C8
/* 8024A5B4 00247514 2C 05 00 00 */ cmpwi r5, 0
/* 8024A5B8 00247518 38 80 00 04 */ li r4, 4
/* 8024A5BC 0024751C 41 82 00 08 */ beq lbl_8024A5C4
/* 8024A5C0 00247520 54 A4 08 3C */ slwi r4, r5, 1
lbl_8024A5C4:
/* 8024A5C4 00247524 48 00 0A FD */ bl sub_8024b0c0
lbl_8024A5C8:
/* 8024A5C8 00247528 80 1E 00 04 */ lwz r0, 4(r30)
/* 8024A5CC 0024752C 7F E4 FB 78 */ mr r4, r31
/* 8024A5D0 00247530 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 8024A5D4 00247534 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 8024A5D8 00247538 7C 63 02 14 */ add r3, r3, r0
/* 8024A5DC 0024753C 48 00 00 29 */ bl sub_8024a604
/* 8024A5E0 00247540 80 7E 00 04 */ lwz r3, 4(r30)
/* 8024A5E4 00247544 38 03 00 01 */ addi r0, r3, 1
/* 8024A5E8 00247548 90 1E 00 04 */ stw r0, 4(r30)
/* 8024A5EC 0024754C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024A5F0 00247550 83 C1 00 08 */ lwz r30, 8(r1)
/* 8024A5F4 00247554 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024A5F8 00247558 7C 08 03 A6 */ mtlr r0
/* 8024A5FC 0024755C 38 21 00 10 */ addi r1, r1, 0x10
/* 8024A600 00247560 4E 80 00 20 */ blr
.global sub_8024a604
sub_8024a604:
/* 8024A604 00247564 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024A608 00247568 7C 08 02 A6 */ mflr r0
/* 8024A60C 0024756C 28 03 00 00 */ cmplwi r3, 0
/* 8024A610 00247570 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024A614 00247574 41 82 00 08 */ beq lbl_8024A61C
/* 8024A618 00247578 48 00 00 15 */ bl sub_8024a62c
lbl_8024A61C:
/* 8024A61C 0024757C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024A620 00247580 7C 08 03 A6 */ mtlr r0
/* 8024A624 00247584 38 21 00 10 */ addi r1, r1, 0x10
/* 8024A628 00247588 4E 80 00 20 */ blr
.global sub_8024a62c
sub_8024a62c:
/* 8024A62C 0024758C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024A630 00247590 7C 08 02 A6 */ mflr r0
/* 8024A634 00247594 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024A638 00247598 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024A63C 0024759C 7C 9F 23 78 */ mr r31, r4
/* 8024A640 002475A0 93 C1 00 08 */ stw r30, 8(r1)
/* 8024A644 002475A4 7C 7E 1B 78 */ mr r30, r3
/* 8024A648 002475A8 80 04 00 00 */ lwz r0, 0(r4)
/* 8024A64C 002475AC 90 03 00 00 */ stw r0, 0(r3)
/* 8024A650 002475B0 80 04 00 04 */ lwz r0, 4(r4)
/* 8024A654 002475B4 90 03 00 04 */ stw r0, 4(r3)
/* 8024A658 002475B8 80 04 00 08 */ lwz r0, 8(r4)
/* 8024A65C 002475BC 90 03 00 08 */ stw r0, 8(r3)
/* 8024A660 002475C0 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8024A664 002475C4 90 03 00 10 */ stw r0, 0x10(r3)
/* 8024A668 002475C8 80 04 00 14 */ lwz r0, 0x14(r4)
/* 8024A66C 002475CC 90 03 00 14 */ stw r0, 0x14(r3)
/* 8024A670 002475D0 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8024A674 002475D4 2C 00 00 00 */ cmpwi r0, 0
/* 8024A678 002475D8 40 82 00 1C */ bne lbl_8024A694
/* 8024A67C 002475DC 80 1F 00 14 */ lwz r0, 0x14(r31)
/* 8024A680 002475E0 2C 00 00 00 */ cmpwi r0, 0
/* 8024A684 002475E4 40 82 00 10 */ bne lbl_8024A694
/* 8024A688 002475E8 38 00 00 00 */ li r0, 0
/* 8024A68C 002475EC 90 1E 00 18 */ stw r0, 0x18(r30)
/* 8024A690 002475F0 48 00 00 64 */ b lbl_8024A6F4
lbl_8024A694:
/* 8024A694 002475F4 80 1E 00 14 */ lwz r0, 0x14(r30)
/* 8024A698 002475F8 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d
/* 8024A69C 002475FC 40 82 00 10 */ bne lbl_8024A6AC
/* 8024A6A0 00247600 38 00 00 00 */ li r0, 0
/* 8024A6A4 00247604 90 1E 00 18 */ stw r0, 0x18(r30)
/* 8024A6A8 00247608 48 00 00 18 */ b lbl_8024A6C0
lbl_8024A6AC:
/* 8024A6AC 0024760C 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024A6B0 00247610 38 A0 00 00 */ li r5, 0
/* 8024A6B4 00247614 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024A6B8 00247618 48 0C B1 61 */ bl __nwa__FUlPCcPCc
/* 8024A6BC 0024761C 90 7E 00 18 */ stw r3, 0x18(r30)
lbl_8024A6C0:
/* 8024A6C0 00247620 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 8024A6C4 00247624 80 9F 00 18 */ lwz r4, 0x18(r31)
/* 8024A6C8 00247628 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 8024A6CC 0024762C 7C 09 03 A6 */ mtctr r0
/* 8024A6D0 00247630 2C 00 00 00 */ cmpwi r0, 0
/* 8024A6D4 00247634 40 81 00 20 */ ble lbl_8024A6F4
lbl_8024A6D8:
/* 8024A6D8 00247638 28 03 00 00 */ cmplwi r3, 0
/* 8024A6DC 0024763C 41 82 00 0C */ beq lbl_8024A6E8
/* 8024A6E0 00247640 80 04 00 00 */ lwz r0, 0(r4)
/* 8024A6E4 00247644 90 03 00 00 */ stw r0, 0(r3)
lbl_8024A6E8:
/* 8024A6E8 00247648 38 63 00 04 */ addi r3, r3, 4
/* 8024A6EC 0024764C 38 84 00 04 */ addi r4, r4, 4
/* 8024A6F0 00247650 42 00 FF E8 */ bdnz lbl_8024A6D8
lbl_8024A6F4:
/* 8024A6F4 00247654 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 8024A6F8 00247658 90 1E 00 20 */ stw r0, 0x20(r30)
/* 8024A6FC 0024765C 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 8024A700 00247660 90 1E 00 24 */ stw r0, 0x24(r30)
/* 8024A704 00247664 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 8024A708 00247668 2C 00 00 00 */ cmpwi r0, 0
/* 8024A70C 0024766C 40 82 00 1C */ bne lbl_8024A728
/* 8024A710 00247670 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 8024A714 00247674 2C 00 00 00 */ cmpwi r0, 0
/* 8024A718 00247678 40 82 00 10 */ bne lbl_8024A728
/* 8024A71C 0024767C 38 00 00 00 */ li r0, 0
/* 8024A720 00247680 90 1E 00 28 */ stw r0, 0x28(r30)
/* 8024A724 00247684 48 00 00 74 */ b lbl_8024A798
lbl_8024A728:
/* 8024A728 00247688 80 1E 00 24 */ lwz r0, 0x24(r30)
/* 8024A72C 0024768C 54 03 20 37 */ rlwinm. r3, r0, 4, 0, 0x1b
/* 8024A730 00247690 40 82 00 10 */ bne lbl_8024A740
/* 8024A734 00247694 38 00 00 00 */ li r0, 0
/* 8024A738 00247698 90 1E 00 28 */ stw r0, 0x28(r30)
/* 8024A73C 0024769C 48 00 00 18 */ b lbl_8024A754
lbl_8024A740:
/* 8024A740 002476A0 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024A744 002476A4 38 A0 00 00 */ li r5, 0
/* 8024A748 002476A8 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024A74C 002476AC 48 0C B0 CD */ bl __nwa__FUlPCcPCc
/* 8024A750 002476B0 90 7E 00 28 */ stw r3, 0x28(r30)
lbl_8024A754:
/* 8024A754 002476B4 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 8024A758 002476B8 80 BF 00 28 */ lwz r5, 0x28(r31)
/* 8024A75C 002476BC 80 9E 00 28 */ lwz r4, 0x28(r30)
/* 8024A760 002476C0 7C 09 03 A6 */ mtctr r0
/* 8024A764 002476C4 2C 00 00 00 */ cmpwi r0, 0
/* 8024A768 002476C8 40 81 00 30 */ ble lbl_8024A798
lbl_8024A76C:
/* 8024A76C 002476CC 28 04 00 00 */ cmplwi r4, 0
/* 8024A770 002476D0 41 82 00 1C */ beq lbl_8024A78C
/* 8024A774 002476D4 80 05 00 00 */ lwz r0, 0(r5)
/* 8024A778 002476D8 90 04 00 00 */ stw r0, 0(r4)
/* 8024A77C 002476DC 80 05 00 08 */ lwz r0, 8(r5)
/* 8024A780 002476E0 80 65 00 0C */ lwz r3, 0xc(r5)
/* 8024A784 002476E4 90 64 00 0C */ stw r3, 0xc(r4)
/* 8024A788 002476E8 90 04 00 08 */ stw r0, 8(r4)
lbl_8024A78C:
/* 8024A78C 002476EC 38 84 00 10 */ addi r4, r4, 0x10
/* 8024A790 002476F0 38 A5 00 10 */ addi r5, r5, 0x10
/* 8024A794 002476F4 42 00 FF D8 */ bdnz lbl_8024A76C
lbl_8024A798:
/* 8024A798 002476F8 88 1F 00 2C */ lbz r0, 0x2c(r31)
/* 8024A79C 002476FC 38 80 00 00 */ li r4, 0
/* 8024A7A0 00247700 7F C3 F3 78 */ mr r3, r30
/* 8024A7A4 00247704 98 1E 00 2C */ stb r0, 0x2c(r30)
/* 8024A7A8 00247708 80 1F 00 30 */ lwz r0, 0x30(r31)
/* 8024A7AC 0024770C 90 1E 00 30 */ stw r0, 0x30(r30)
/* 8024A7B0 00247710 98 9F 00 2C */ stb r4, 0x2c(r31)
/* 8024A7B4 00247714 88 1F 00 34 */ lbz r0, 0x34(r31)
/* 8024A7B8 00247718 98 1E 00 34 */ stb r0, 0x34(r30)
/* 8024A7BC 0024771C 80 1F 00 38 */ lwz r0, 0x38(r31)
/* 8024A7C0 00247720 90 1E 00 38 */ stw r0, 0x38(r30)
/* 8024A7C4 00247724 98 9F 00 34 */ stb r4, 0x34(r31)
/* 8024A7C8 00247728 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024A7CC 0024772C 83 C1 00 08 */ lwz r30, 8(r1)
/* 8024A7D0 00247730 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024A7D4 00247734 7C 08 03 A6 */ mtlr r0
/* 8024A7D8 00247738 38 21 00 10 */ addi r1, r1, 0x10
/* 8024A7DC 0024773C 4E 80 00 20 */ blr
.global sub_8024a7e0
sub_8024a7e0:
/* 8024A7E0 00247740 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8024A7E4 00247744 7C 08 02 A6 */ mflr r0
/* 8024A7E8 00247748 90 01 00 34 */ stw r0, 0x34(r1)
/* 8024A7EC 0024774C 38 00 00 00 */ li r0, 0
/* 8024A7F0 00247750 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8024A7F4 00247754 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8024A7F8 00247758 7C 9E 23 78 */ mr r30, r4
/* 8024A7FC 0024775C 93 A1 00 24 */ stw r29, 0x24(r1)
/* 8024A800 00247760 7C 7D 1B 78 */ mr r29, r3
/* 8024A804 00247764 7F C3 F3 78 */ mr r3, r30
/* 8024A808 00247768 81 05 00 00 */ lwz r8, 0(r5)
/* 8024A80C 0024776C 80 A4 00 0C */ lwz r5, 0xc(r4)
/* 8024A810 00247770 3C 80 6B CA */ lis r4, 0x6BCA1AF3@ha
/* 8024A814 00247774 38 84 1A F3 */ addi r4, r4, 0x6BCA1AF3@l
/* 8024A818 00247778 90 C1 00 14 */ stw r6, 0x14(r1)
/* 8024A81C 0024777C 7C A5 40 50 */ subf r5, r5, r8
/* 8024A820 00247780 7C E4 28 96 */ mulhw r7, r4, r5
/* 8024A824 00247784 90 C1 00 0C */ stw r6, 0xc(r1)
/* 8024A828 00247788 38 81 00 08 */ addi r4, r1, 8
/* 8024A82C 0024778C 90 01 00 18 */ stw r0, 0x18(r1)
/* 8024A830 00247790 38 C1 00 0C */ addi r6, r1, 0xc
/* 8024A834 00247794 38 A0 00 01 */ li r5, 1
/* 8024A838 00247798 7C E7 2E 70 */ srawi r7, r7, 5
/* 8024A83C 0024779C 90 01 00 10 */ stw r0, 0x10(r1)
/* 8024A840 002477A0 54 E0 0F FE */ srwi r0, r7, 0x1f
/* 8024A844 002477A4 91 01 00 08 */ stw r8, 8(r1)
/* 8024A848 002477A8 7F E7 02 14 */ add r31, r7, r0
/* 8024A84C 002477AC 48 00 00 31 */ bl sub_8024a87c
/* 8024A850 002477B0 1C 1F 00 4C */ mulli r0, r31, 0x4c
/* 8024A854 002477B4 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 8024A858 002477B8 7C 63 02 14 */ add r3, r3, r0
/* 8024A85C 002477BC 90 7D 00 00 */ stw r3, 0(r29)
/* 8024A860 002477C0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8024A864 002477C4 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8024A868 002477C8 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8024A86C 002477CC 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 8024A870 002477D0 7C 08 03 A6 */ mtlr r0
/* 8024A874 002477D4 38 21 00 30 */ addi r1, r1, 0x30
/* 8024A878 002477D8 4E 80 00 20 */ blr
.global sub_8024a87c
sub_8024a87c:
/* 8024A87C 002477DC 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8024A880 002477E0 7C 08 02 A6 */ mflr r0
/* 8024A884 002477E4 90 01 00 44 */ stw r0, 0x44(r1)
/* 8024A888 002477E8 BE A1 00 14 */ stmw r21, 0x14(r1)
/* 8024A88C 002477EC 7C BA 2B 78 */ mr r26, r5
/* 8024A890 002477F0 7C 79 1B 78 */ mr r25, r3
/* 8024A894 002477F4 7C 95 23 78 */ mr r21, r4
/* 8024A898 002477F8 80 A3 00 04 */ lwz r5, 4(r3)
/* 8024A89C 002477FC 80 63 00 08 */ lwz r3, 8(r3)
/* 8024A8A0 00247800 7C E5 D2 14 */ add r7, r5, r26
/* 8024A8A4 00247804 80 99 00 0C */ lwz r4, 0xc(r25)
/* 8024A8A8 00247808 7C 07 18 00 */ cmpw r7, r3
/* 8024A8AC 0024780C 83 C6 00 00 */ lwz r30, 0(r6)
/* 8024A8B0 00247810 7C 9D 23 78 */ mr r29, r4
/* 8024A8B4 00247814 41 81 00 B4 */ bgt lbl_8024A968
/* 8024A8B8 00247818 80 15 00 00 */ lwz r0, 0(r21)
/* 8024A8BC 0024781C 3C 60 6B CA */ lis r3, 0x6BCA1AF3@ha
/* 8024A8C0 00247820 38 63 1A F3 */ addi r3, r3, 0x6BCA1AF3@l
/* 8024A8C4 00247824 7C 04 00 50 */ subf r0, r4, r0
/* 8024A8C8 00247828 7C 03 00 96 */ mulhw r0, r3, r0
/* 8024A8CC 0024782C 7C 00 2E 70 */ srawi r0, r0, 5
/* 8024A8D0 00247830 54 03 0F FE */ srwi r3, r0, 0x1f
/* 8024A8D4 00247834 7F 60 1A 14 */ add r27, r0, r3
/* 8024A8D8 00247838 7C 7B 28 50 */ subf r3, r27, r5
/* 8024A8DC 0024783C 3A E3 FF FF */ addi r23, r3, -1
/* 8024A8E0 00247840 1C 7B 00 4C */ mulli r3, r27, 0x4c
/* 8024A8E4 00247844 1C 1A 00 4C */ mulli r0, r26, 0x4c
/* 8024A8E8 00247848 7E C4 1A 14 */ add r22, r4, r3
/* 8024A8EC 0024784C 1C 77 00 4C */ mulli r3, r23, 0x4c
/* 8024A8F0 00247850 7F 00 1A 14 */ add r24, r0, r3
/* 8024A8F4 00247854 7F 16 C2 14 */ add r24, r22, r24
/* 8024A8F8 00247858 7F 96 1A 14 */ add r28, r22, r3
/* 8024A8FC 0024785C 48 00 00 30 */ b lbl_8024A92C
lbl_8024A900:
/* 8024A900 00247860 7C 1B BA 14 */ add r0, r27, r23
/* 8024A904 00247864 80 99 00 0C */ lwz r4, 0xc(r25)
/* 8024A908 00247868 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 8024A90C 0024786C 7F 03 C3 78 */ mr r3, r24
/* 8024A910 00247870 7C 84 02 14 */ add r4, r4, r0
/* 8024A914 00247874 48 00 02 01 */ bl sub_8024ab14
/* 8024A918 00247878 7F 83 E3 78 */ mr r3, r28
/* 8024A91C 0024787C 4B FF F6 E5 */ bl sub_8024a000
/* 8024A920 00247880 3B 18 FF B4 */ addi r24, r24, -76
/* 8024A924 00247884 3B 9C FF B4 */ addi r28, r28, -76
/* 8024A928 00247888 3A F7 FF FF */ addi r23, r23, -1
lbl_8024A92C:
/* 8024A92C 0024788C 2C 17 00 00 */ cmpwi r23, 0
/* 8024A930 00247890 40 80 FF D0 */ bge lbl_8024A900
/* 8024A934 00247894 3A E0 00 00 */ li r23, 0
/* 8024A938 00247898 48 00 00 18 */ b lbl_8024A950
lbl_8024A93C:
/* 8024A93C 0024789C 7E C3 B3 78 */ mr r3, r22
/* 8024A940 002478A0 7F C4 F3 78 */ mr r4, r30
/* 8024A944 002478A4 48 00 01 D1 */ bl sub_8024ab14
/* 8024A948 002478A8 3A D6 00 4C */ addi r22, r22, 0x4c
/* 8024A94C 002478AC 3A F7 00 01 */ addi r23, r23, 1
lbl_8024A950:
/* 8024A950 002478B0 7C 17 D0 00 */ cmpw r23, r26
/* 8024A954 002478B4 41 80 FF E8 */ blt lbl_8024A93C
/* 8024A958 002478B8 80 19 00 04 */ lwz r0, 4(r25)
/* 8024A95C 002478BC 7C 00 D2 14 */ add r0, r0, r26
/* 8024A960 002478C0 90 19 00 04 */ stw r0, 4(r25)
/* 8024A964 002478C4 48 00 01 50 */ b lbl_8024AAB4
lbl_8024A968:
/* 8024A968 002478C8 2C 03 00 00 */ cmpwi r3, 0
/* 8024A96C 002478CC 38 00 00 04 */ li r0, 4
/* 8024A970 002478D0 41 82 00 08 */ beq lbl_8024A978
/* 8024A974 002478D4 54 60 08 3C */ slwi r0, r3, 1
lbl_8024A978:
/* 8024A978 002478D8 7C 1C 03 78 */ mr r28, r0
/* 8024A97C 002478DC 48 00 00 08 */ b lbl_8024A984
lbl_8024A980:
/* 8024A980 002478E0 57 9C 08 3C */ slwi r28, r28, 1
lbl_8024A984:
/* 8024A984 002478E4 7C 1C 38 00 */ cmpw r28, r7
/* 8024A988 002478E8 41 80 FF F8 */ blt lbl_8024A980
/* 8024A98C 002478EC 1C 7C 00 4C */ mulli r3, r28, 0x4c
/* 8024A990 002478F0 2C 03 00 00 */ cmpwi r3, 0
/* 8024A994 002478F4 40 82 00 0C */ bne lbl_8024A9A0
/* 8024A998 002478F8 3B E0 00 00 */ li r31, 0
/* 8024A99C 002478FC 48 00 00 18 */ b lbl_8024A9B4
lbl_8024A9A0:
/* 8024A9A0 00247900 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024A9A4 00247904 38 A0 00 00 */ li r5, 0
/* 8024A9A8 00247908 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024A9AC 0024790C 48 0C AE 6D */ bl __nwa__FUlPCcPCc
/* 8024A9B0 00247910 7C 7F 1B 78 */ mr r31, r3
lbl_8024A9B4:
/* 8024A9B4 00247914 80 99 00 0C */ lwz r4, 0xc(r25)
/* 8024A9B8 00247918 3C 60 6B CA */ lis r3, 0x6BCA1AF3@ha
/* 8024A9BC 0024791C 80 15 00 00 */ lwz r0, 0(r21)
/* 8024A9C0 00247920 38 63 1A F3 */ addi r3, r3, 0x6BCA1AF3@l
/* 8024A9C4 00247924 7F F6 FB 78 */ mr r22, r31
/* 8024A9C8 00247928 3B 60 00 00 */ li r27, 0
/* 8024A9CC 0024792C 7C 04 00 50 */ subf r0, r4, r0
/* 8024A9D0 00247930 3A A0 00 00 */ li r21, 0
/* 8024A9D4 00247934 7C 03 00 96 */ mulhw r0, r3, r0
/* 8024A9D8 00247938 3A E0 00 00 */ li r23, 0
/* 8024A9DC 0024793C 7C 00 2E 70 */ srawi r0, r0, 5
/* 8024A9E0 00247940 54 03 0F FE */ srwi r3, r0, 0x1f
/* 8024A9E4 00247944 7F 00 1A 14 */ add r24, r0, r3
/* 8024A9E8 00247948 48 00 00 24 */ b lbl_8024AA0C
lbl_8024A9EC:
/* 8024A9EC 0024794C 80 19 00 0C */ lwz r0, 0xc(r25)
/* 8024A9F0 00247950 7E C3 B3 78 */ mr r3, r22
/* 8024A9F4 00247954 7C 80 BA 14 */ add r4, r0, r23
/* 8024A9F8 00247958 48 00 01 1D */ bl sub_8024ab14
/* 8024A9FC 0024795C 3A D6 00 4C */ addi r22, r22, 0x4c
/* 8024AA00 00247960 3B 7B 00 01 */ addi r27, r27, 1
/* 8024AA04 00247964 3A F7 00 4C */ addi r23, r23, 0x4c
/* 8024AA08 00247968 3A B5 00 01 */ addi r21, r21, 1
lbl_8024AA0C:
/* 8024AA0C 0024796C 7C 15 C0 00 */ cmpw r21, r24
/* 8024AA10 00247970 41 80 FF DC */ blt lbl_8024A9EC
/* 8024AA14 00247974 1C 1B 00 4C */ mulli r0, r27, 0x4c
/* 8024AA18 00247978 3A A0 00 00 */ li r21, 0
/* 8024AA1C 0024797C 7E DF 02 14 */ add r22, r31, r0
/* 8024AA20 00247980 48 00 00 1C */ b lbl_8024AA3C
lbl_8024AA24:
/* 8024AA24 00247984 7E C3 B3 78 */ mr r3, r22
/* 8024AA28 00247988 7F C4 F3 78 */ mr r4, r30
/* 8024AA2C 0024798C 48 00 00 E9 */ bl sub_8024ab14
/* 8024AA30 00247990 3A D6 00 4C */ addi r22, r22, 0x4c
/* 8024AA34 00247994 3B 7B 00 01 */ addi r27, r27, 1
/* 8024AA38 00247998 3A B5 00 01 */ addi r21, r21, 1
lbl_8024AA3C:
/* 8024AA3C 0024799C 7C 15 D0 00 */ cmpw r21, r26
/* 8024AA40 002479A0 41 80 FF E4 */ blt lbl_8024AA24
/* 8024AA44 002479A4 1C 1B 00 4C */ mulli r0, r27, 0x4c
/* 8024AA48 002479A8 7F 15 C3 78 */ mr r21, r24
/* 8024AA4C 002479AC 1E D8 00 4C */ mulli r22, r24, 0x4c
/* 8024AA50 002479B0 7E FF 02 14 */ add r23, r31, r0
/* 8024AA54 002479B4 48 00 00 20 */ b lbl_8024AA74
lbl_8024AA58:
/* 8024AA58 002479B8 80 19 00 0C */ lwz r0, 0xc(r25)
/* 8024AA5C 002479BC 7E E3 BB 78 */ mr r3, r23
/* 8024AA60 002479C0 7C 80 B2 14 */ add r4, r0, r22
/* 8024AA64 002479C4 48 00 00 B1 */ bl sub_8024ab14
/* 8024AA68 002479C8 3A F7 00 4C */ addi r23, r23, 0x4c
/* 8024AA6C 002479CC 3A D6 00 4C */ addi r22, r22, 0x4c
/* 8024AA70 002479D0 3A B5 00 01 */ addi r21, r21, 1
lbl_8024AA74:
/* 8024AA74 002479D4 80 19 00 04 */ lwz r0, 4(r25)
/* 8024AA78 002479D8 7C 15 00 00 */ cmpw r21, r0
/* 8024AA7C 002479DC 41 80 FF DC */ blt lbl_8024AA58
/* 8024AA80 002479E0 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 8024AA84 002479E4 7F A3 EB 78 */ mr r3, r29
/* 8024AA88 002479E8 7C 9D 02 14 */ add r4, r29, r0
/* 8024AA8C 002479EC 48 00 00 3D */ bl sub_8024aac8
/* 8024AA90 002479F0 80 79 00 0C */ lwz r3, 0xc(r25)
/* 8024AA94 002479F4 28 03 00 00 */ cmplwi r3, 0
/* 8024AA98 002479F8 41 82 00 08 */ beq lbl_8024AAA0
/* 8024AA9C 002479FC 48 0C AE 95 */ bl Free__7CMemoryFPCv
lbl_8024AAA0:
/* 8024AAA0 00247A00 93 F9 00 0C */ stw r31, 0xc(r25)
/* 8024AAA4 00247A04 93 99 00 08 */ stw r28, 8(r25)
/* 8024AAA8 00247A08 80 19 00 04 */ lwz r0, 4(r25)
/* 8024AAAC 00247A0C 7C 00 D2 14 */ add r0, r0, r26
/* 8024AAB0 00247A10 90 19 00 04 */ stw r0, 4(r25)
lbl_8024AAB4:
/* 8024AAB4 00247A14 BA A1 00 14 */ lmw r21, 0x14(r1)
/* 8024AAB8 00247A18 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8024AABC 00247A1C 7C 08 03 A6 */ mtlr r0
/* 8024AAC0 00247A20 38 21 00 40 */ addi r1, r1, 0x40
/* 8024AAC4 00247A24 4E 80 00 20 */ blr
.global sub_8024aac8
sub_8024aac8:
/* 8024AAC8 00247A28 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024AACC 00247A2C 7C 08 02 A6 */ mflr r0
/* 8024AAD0 00247A30 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024AAD4 00247A34 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024AAD8 00247A38 7C 7F 1B 78 */ mr r31, r3
/* 8024AADC 00247A3C 93 C1 00 08 */ stw r30, 8(r1)
/* 8024AAE0 00247A40 7C 9E 23 78 */ mr r30, r4
/* 8024AAE4 00247A44 48 00 00 10 */ b lbl_8024AAF4
lbl_8024AAE8:
/* 8024AAE8 00247A48 7F E3 FB 78 */ mr r3, r31
/* 8024AAEC 00247A4C 4B FF F5 15 */ bl sub_8024a000
/* 8024AAF0 00247A50 3B FF 00 4C */ addi r31, r31, 0x4c
lbl_8024AAF4:
/* 8024AAF4 00247A54 7C 1F F0 40 */ cmplw r31, r30
/* 8024AAF8 00247A58 40 82 FF F0 */ bne lbl_8024AAE8
/* 8024AAFC 00247A5C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024AB00 00247A60 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024AB04 00247A64 83 C1 00 08 */ lwz r30, 8(r1)
/* 8024AB08 00247A68 7C 08 03 A6 */ mtlr r0
/* 8024AB0C 00247A6C 38 21 00 10 */ addi r1, r1, 0x10
/* 8024AB10 00247A70 4E 80 00 20 */ blr
.global sub_8024ab14
sub_8024ab14:
/* 8024AB14 00247A74 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024AB18 00247A78 7C 08 02 A6 */ mflr r0
/* 8024AB1C 00247A7C 28 03 00 00 */ cmplwi r3, 0
/* 8024AB20 00247A80 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024AB24 00247A84 41 82 00 08 */ beq lbl_8024AB2C
/* 8024AB28 00247A88 48 00 00 15 */ bl sub_8024ab3c
lbl_8024AB2C:
/* 8024AB2C 00247A8C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024AB30 00247A90 7C 08 03 A6 */ mtlr r0
/* 8024AB34 00247A94 38 21 00 10 */ addi r1, r1, 0x10
/* 8024AB38 00247A98 4E 80 00 20 */ blr
.global sub_8024ab3c
sub_8024ab3c:
/* 8024AB3C 00247A9C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024AB40 00247AA0 7C 08 02 A6 */ mflr r0
/* 8024AB44 00247AA4 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024AB48 00247AA8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024AB4C 00247AAC 7C 7F 1B 78 */ mr r31, r3
/* 8024AB50 00247AB0 38 7F 00 04 */ addi r3, r31, 4
/* 8024AB54 00247AB4 80 04 00 00 */ lwz r0, 0(r4)
/* 8024AB58 00247AB8 38 84 00 04 */ addi r4, r4, 4
/* 8024AB5C 00247ABC 90 1F 00 00 */ stw r0, 0(r31)
/* 8024AB60 00247AC0 48 00 00 1D */ bl __ct__16CSaveWorldMemoryFRC16CSaveWorldMemory
/* 8024AB64 00247AC4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024AB68 00247AC8 7F E3 FB 78 */ mr r3, r31
/* 8024AB6C 00247ACC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024AB70 00247AD0 7C 08 03 A6 */ mtlr r0
/* 8024AB74 00247AD4 38 21 00 10 */ addi r1, r1, 0x10
/* 8024AB78 00247AD8 4E 80 00 20 */ blr
.global __ct__16CSaveWorldMemoryFRC16CSaveWorldMemory
__ct__16CSaveWorldMemoryFRC16CSaveWorldMemory:
/* 8024AB7C 00247ADC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8024AB80 00247AE0 7C 08 02 A6 */ mflr r0
/* 8024AB84 00247AE4 90 01 00 24 */ stw r0, 0x24(r1)
/* 8024AB88 00247AE8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8024AB8C 00247AEC 7C 9F 23 78 */ mr r31, r4
/* 8024AB90 00247AF0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8024AB94 00247AF4 7C 7E 1B 78 */ mr r30, r3
/* 8024AB98 00247AF8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8024AB9C 00247AFC 93 81 00 10 */ stw r28, 0x10(r1)
/* 8024ABA0 00247B00 80 04 00 00 */ lwz r0, 0(r4)
/* 8024ABA4 00247B04 90 03 00 00 */ stw r0, 0(r3)
/* 8024ABA8 00247B08 80 04 00 04 */ lwz r0, 4(r4)
/* 8024ABAC 00247B0C 90 03 00 04 */ stw r0, 4(r3)
/* 8024ABB0 00247B10 80 04 00 08 */ lwz r0, 8(r4)
/* 8024ABB4 00247B14 90 03 00 08 */ stw r0, 8(r3)
/* 8024ABB8 00247B18 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8024ABBC 00247B1C 90 03 00 10 */ stw r0, 0x10(r3)
/* 8024ABC0 00247B20 80 04 00 14 */ lwz r0, 0x14(r4)
/* 8024ABC4 00247B24 90 03 00 14 */ stw r0, 0x14(r3)
/* 8024ABC8 00247B28 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8024ABCC 00247B2C 2C 00 00 00 */ cmpwi r0, 0
/* 8024ABD0 00247B30 40 82 00 1C */ bne lbl_8024ABEC
/* 8024ABD4 00247B34 80 1F 00 14 */ lwz r0, 0x14(r31)
/* 8024ABD8 00247B38 2C 00 00 00 */ cmpwi r0, 0
/* 8024ABDC 00247B3C 40 82 00 10 */ bne lbl_8024ABEC
/* 8024ABE0 00247B40 38 00 00 00 */ li r0, 0
/* 8024ABE4 00247B44 90 1E 00 18 */ stw r0, 0x18(r30)
/* 8024ABE8 00247B48 48 00 00 64 */ b lbl_8024AC4C
lbl_8024ABEC:
/* 8024ABEC 00247B4C 80 1E 00 14 */ lwz r0, 0x14(r30)
/* 8024ABF0 00247B50 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d
/* 8024ABF4 00247B54 40 82 00 10 */ bne lbl_8024AC04
/* 8024ABF8 00247B58 38 00 00 00 */ li r0, 0
/* 8024ABFC 00247B5C 90 1E 00 18 */ stw r0, 0x18(r30)
/* 8024AC00 00247B60 48 00 00 18 */ b lbl_8024AC18
lbl_8024AC04:
/* 8024AC04 00247B64 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024AC08 00247B68 38 A0 00 00 */ li r5, 0
/* 8024AC0C 00247B6C 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024AC10 00247B70 48 0C AC 09 */ bl __nwa__FUlPCcPCc
/* 8024AC14 00247B74 90 7E 00 18 */ stw r3, 0x18(r30)
lbl_8024AC18:
/* 8024AC18 00247B78 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 8024AC1C 00247B7C 80 9F 00 18 */ lwz r4, 0x18(r31)
/* 8024AC20 00247B80 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 8024AC24 00247B84 7C 09 03 A6 */ mtctr r0
/* 8024AC28 00247B88 2C 00 00 00 */ cmpwi r0, 0
/* 8024AC2C 00247B8C 40 81 00 20 */ ble lbl_8024AC4C
lbl_8024AC30:
/* 8024AC30 00247B90 28 03 00 00 */ cmplwi r3, 0
/* 8024AC34 00247B94 41 82 00 0C */ beq lbl_8024AC40
/* 8024AC38 00247B98 80 04 00 00 */ lwz r0, 0(r4)
/* 8024AC3C 00247B9C 90 03 00 00 */ stw r0, 0(r3)
lbl_8024AC40:
/* 8024AC40 00247BA0 38 63 00 04 */ addi r3, r3, 4
/* 8024AC44 00247BA4 38 84 00 04 */ addi r4, r4, 4
/* 8024AC48 00247BA8 42 00 FF E8 */ bdnz lbl_8024AC30
lbl_8024AC4C:
/* 8024AC4C 00247BAC 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 8024AC50 00247BB0 90 1E 00 20 */ stw r0, 0x20(r30)
/* 8024AC54 00247BB4 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 8024AC58 00247BB8 90 1E 00 24 */ stw r0, 0x24(r30)
/* 8024AC5C 00247BBC 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 8024AC60 00247BC0 2C 00 00 00 */ cmpwi r0, 0
/* 8024AC64 00247BC4 40 82 00 1C */ bne lbl_8024AC80
/* 8024AC68 00247BC8 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 8024AC6C 00247BCC 2C 00 00 00 */ cmpwi r0, 0
/* 8024AC70 00247BD0 40 82 00 10 */ bne lbl_8024AC80
/* 8024AC74 00247BD4 38 00 00 00 */ li r0, 0
/* 8024AC78 00247BD8 90 1E 00 28 */ stw r0, 0x28(r30)
/* 8024AC7C 00247BDC 48 00 00 74 */ b lbl_8024ACF0
lbl_8024AC80:
/* 8024AC80 00247BE0 80 1E 00 24 */ lwz r0, 0x24(r30)
/* 8024AC84 00247BE4 54 03 20 37 */ rlwinm. r3, r0, 4, 0, 0x1b
/* 8024AC88 00247BE8 40 82 00 10 */ bne lbl_8024AC98
/* 8024AC8C 00247BEC 38 00 00 00 */ li r0, 0
/* 8024AC90 00247BF0 90 1E 00 28 */ stw r0, 0x28(r30)
/* 8024AC94 00247BF4 48 00 00 18 */ b lbl_8024ACAC
lbl_8024AC98:
/* 8024AC98 00247BF8 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024AC9C 00247BFC 38 A0 00 00 */ li r5, 0
/* 8024ACA0 00247C00 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024ACA4 00247C04 48 0C AB 75 */ bl __nwa__FUlPCcPCc
/* 8024ACA8 00247C08 90 7E 00 28 */ stw r3, 0x28(r30)
lbl_8024ACAC:
/* 8024ACAC 00247C0C 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 8024ACB0 00247C10 80 BF 00 28 */ lwz r5, 0x28(r31)
/* 8024ACB4 00247C14 80 9E 00 28 */ lwz r4, 0x28(r30)
/* 8024ACB8 00247C18 7C 09 03 A6 */ mtctr r0
/* 8024ACBC 00247C1C 2C 00 00 00 */ cmpwi r0, 0
/* 8024ACC0 00247C20 40 81 00 30 */ ble lbl_8024ACF0
lbl_8024ACC4:
/* 8024ACC4 00247C24 28 04 00 00 */ cmplwi r4, 0
/* 8024ACC8 00247C28 41 82 00 1C */ beq lbl_8024ACE4
/* 8024ACCC 00247C2C 80 05 00 00 */ lwz r0, 0(r5)
/* 8024ACD0 00247C30 90 04 00 00 */ stw r0, 0(r4)
/* 8024ACD4 00247C34 80 05 00 08 */ lwz r0, 8(r5)
/* 8024ACD8 00247C38 80 65 00 0C */ lwz r3, 0xc(r5)
/* 8024ACDC 00247C3C 90 64 00 0C */ stw r3, 0xc(r4)
/* 8024ACE0 00247C40 90 04 00 08 */ stw r0, 8(r4)
lbl_8024ACE4:
/* 8024ACE4 00247C44 38 84 00 10 */ addi r4, r4, 0x10
/* 8024ACE8 00247C48 38 A5 00 10 */ addi r5, r5, 0x10
/* 8024ACEC 00247C4C 42 00 FF D8 */ bdnz lbl_8024ACC4
lbl_8024ACF0:
/* 8024ACF0 00247C50 88 1F 00 38 */ lbz r0, 0x38(r31)
/* 8024ACF4 00247C54 98 1E 00 38 */ stb r0, 0x38(r30)
/* 8024ACF8 00247C58 88 1F 00 38 */ lbz r0, 0x38(r31)
/* 8024ACFC 00247C5C 28 00 00 00 */ cmplwi r0, 0
/* 8024AD00 00247C60 41 82 00 24 */ beq lbl_8024AD24
/* 8024AD04 00247C64 37 BE 00 2C */ addic. r29, r30, 0x2c
/* 8024AD08 00247C68 3B 9F 00 2C */ addi r28, r31, 0x2c
/* 8024AD0C 00247C6C 41 82 00 18 */ beq lbl_8024AD24
/* 8024AD10 00247C70 7F A3 EB 78 */ mr r3, r29
/* 8024AD14 00247C74 7F 84 E3 78 */ mr r4, r28
/* 8024AD18 00247C78 48 0F 61 91 */ bl __ct__6CTokenFRC6CToken
/* 8024AD1C 00247C7C 80 1C 00 08 */ lwz r0, 8(r28)
/* 8024AD20 00247C80 90 1D 00 08 */ stw r0, 8(r29)
lbl_8024AD24:
/* 8024AD24 00247C84 88 1F 00 44 */ lbz r0, 0x44(r31)
/* 8024AD28 00247C88 98 1E 00 44 */ stb r0, 0x44(r30)
/* 8024AD2C 00247C8C 88 1F 00 44 */ lbz r0, 0x44(r31)
/* 8024AD30 00247C90 28 00 00 00 */ cmplwi r0, 0
/* 8024AD34 00247C94 41 82 00 14 */ beq lbl_8024AD48
/* 8024AD38 00247C98 34 7E 00 3C */ addic. r3, r30, 0x3c
/* 8024AD3C 00247C9C 38 9F 00 3C */ addi r4, r31, 0x3c
/* 8024AD40 00247CA0 41 82 00 08 */ beq lbl_8024AD48
/* 8024AD44 00247CA4 48 0F 61 65 */ bl __ct__6CTokenFRC6CToken
lbl_8024AD48:
/* 8024AD48 00247CA8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8024AD4C 00247CAC 7F C3 F3 78 */ mr r3, r30
/* 8024AD50 00247CB0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8024AD54 00247CB4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8024AD58 00247CB8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8024AD5C 00247CBC 83 81 00 10 */ lwz r28, 0x10(r1)
/* 8024AD60 00247CC0 7C 08 03 A6 */ mtlr r0
/* 8024AD64 00247CC4 38 21 00 20 */ addi r1, r1, 0x20
/* 8024AD68 00247CC8 4E 80 00 20 */ blr
.global sub_8024ad6c
sub_8024ad6c:
/* 8024AD6C 00247CCC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024AD70 00247CD0 7C 08 02 A6 */ mflr r0
/* 8024AD74 00247CD4 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024AD78 00247CD8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024AD7C 00247CDC 7C 7F 1B 78 */ mr r31, r3
/* 8024AD80 00247CE0 80 04 00 00 */ lwz r0, 0(r4)
/* 8024AD84 00247CE4 7C A4 2B 78 */ mr r4, r5
/* 8024AD88 00247CE8 90 03 00 00 */ stw r0, 0(r3)
/* 8024AD8C 00247CEC 38 7F 00 04 */ addi r3, r31, 4
/* 8024AD90 00247CF0 4B FF FD ED */ bl __ct__16CSaveWorldMemoryFRC16CSaveWorldMemory
/* 8024AD94 00247CF4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024AD98 00247CF8 7F E3 FB 78 */ mr r3, r31
/* 8024AD9C 00247CFC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024ADA0 00247D00 7C 08 03 A6 */ mtlr r0
/* 8024ADA4 00247D04 38 21 00 10 */ addi r1, r1, 0x10
/* 8024ADA8 00247D08 4E 80 00 20 */ blr
.global sub_8024adac
sub_8024adac:
/* 8024ADAC 00247D0C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8024ADB0 00247D10 7C 08 02 A6 */ mflr r0
/* 8024ADB4 00247D14 90 01 00 24 */ stw r0, 0x24(r1)
/* 8024ADB8 00247D18 38 A1 00 0C */ addi r5, r1, 0xc
/* 8024ADBC 00247D1C 88 E1 00 08 */ lbz r7, 8(r1)
/* 8024ADC0 00247D20 80 C4 00 00 */ lwz r6, 0(r4)
/* 8024ADC4 00247D24 38 81 00 10 */ addi r4, r1, 0x10
/* 8024ADC8 00247D28 80 03 00 00 */ lwz r0, 0(r3)
/* 8024ADCC 00247D2C 38 61 00 14 */ addi r3, r1, 0x14
/* 8024ADD0 00247D30 90 C1 00 10 */ stw r6, 0x10(r1)
/* 8024ADD4 00247D34 98 E1 00 0C */ stb r7, 0xc(r1)
/* 8024ADD8 00247D38 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024ADDC 00247D3C 48 00 00 15 */ bl sub_8024adf0
/* 8024ADE0 00247D40 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8024ADE4 00247D44 7C 08 03 A6 */ mtlr r0
/* 8024ADE8 00247D48 38 21 00 20 */ addi r1, r1, 0x20
/* 8024ADEC 00247D4C 4E 80 00 20 */ blr
.global sub_8024adf0
sub_8024adf0:
/* 8024ADF0 00247D50 80 63 00 00 */ lwz r3, 0(r3)
/* 8024ADF4 00247D54 80 04 00 00 */ lwz r0, 0(r4)
/* 8024ADF8 00247D58 7C 03 00 50 */ subf r0, r3, r0
/* 8024ADFC 00247D5C 7C 00 16 70 */ srawi r0, r0, 2
/* 8024AE00 00247D60 7C 60 01 94 */ addze r3, r0
/* 8024AE04 00247D64 4E 80 00 20 */ blr
.global sub_8024ae08
sub_8024ae08:
/* 8024AE08 00247D68 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8024AE0C 00247D6C 7C 08 02 A6 */ mflr r0
/* 8024AE10 00247D70 90 01 00 34 */ stw r0, 0x34(r1)
/* 8024AE14 00247D74 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 8024AE18 00247D78 7C 9F 23 78 */ mr r31, r4
/* 8024AE1C 00247D7C 7C 7E 1B 78 */ mr r30, r3
/* 8024AE20 00247D80 7C DB 33 78 */ mr r27, r6
/* 8024AE24 00247D84 38 61 00 0C */ addi r3, r1, 0xc
/* 8024AE28 00247D88 80 85 00 00 */ lwz r4, 0(r5)
/* 8024AE2C 00247D8C 80 1F 00 00 */ lwz r0, 0(r31)
/* 8024AE30 00247D90 90 81 00 08 */ stw r4, 8(r1)
/* 8024AE34 00247D94 38 81 00 08 */ addi r4, r1, 8
/* 8024AE38 00247D98 90 01 00 0C */ stw r0, 0xc(r1)
/* 8024AE3C 00247D9C 48 00 04 89 */ bl sub_8024b2c4
/* 8024AE40 00247DA0 80 1F 00 00 */ lwz r0, 0(r31)
/* 8024AE44 00247DA4 7C 7D 1B 78 */ mr r29, r3
/* 8024AE48 00247DA8 90 01 00 10 */ stw r0, 0x10(r1)
/* 8024AE4C 00247DAC 48 00 00 58 */ b lbl_8024AEA4
lbl_8024AE50:
/* 8024AE50 00247DB0 57 A3 0F FE */ srwi r3, r29, 0x1f
/* 8024AE54 00247DB4 80 1F 00 00 */ lwz r0, 0(r31)
/* 8024AE58 00247DB8 7C 83 EA 14 */ add r4, r3, r29
/* 8024AE5C 00247DBC 38 61 00 10 */ addi r3, r1, 0x10
/* 8024AE60 00247DC0 7C 9C 0E 70 */ srawi r28, r4, 1
/* 8024AE64 00247DC4 90 01 00 10 */ stw r0, 0x10(r1)
/* 8024AE68 00247DC8 7F 84 E3 78 */ mr r4, r28
/* 8024AE6C 00247DCC 48 00 03 D9 */ bl sub_8024b244
/* 8024AE70 00247DD0 80 81 00 10 */ lwz r4, 0x10(r1)
/* 8024AE74 00247DD4 80 1B 00 00 */ lwz r0, 0(r27)
/* 8024AE78 00247DD8 80 64 00 00 */ lwz r3, 0(r4)
/* 8024AE7C 00247DDC 7C 03 00 40 */ cmplw r3, r0
/* 8024AE80 00247DE0 40 80 00 20 */ bge lbl_8024AEA0
/* 8024AE84 00247DE4 90 9F 00 00 */ stw r4, 0(r31)
/* 8024AE88 00247DE8 7C 7C E8 50 */ subf r3, r28, r29
/* 8024AE8C 00247DEC 3B A3 FF FF */ addi r29, r3, -1
/* 8024AE90 00247DF0 80 7F 00 00 */ lwz r3, 0(r31)
/* 8024AE94 00247DF4 38 03 00 4C */ addi r0, r3, 0x4c
/* 8024AE98 00247DF8 90 1F 00 00 */ stw r0, 0(r31)
/* 8024AE9C 00247DFC 48 00 00 08 */ b lbl_8024AEA4
lbl_8024AEA0:
/* 8024AEA0 00247E00 7F 9D E3 78 */ mr r29, r28
lbl_8024AEA4:
/* 8024AEA4 00247E04 2C 1D 00 00 */ cmpwi r29, 0
/* 8024AEA8 00247E08 41 81 FF A8 */ bgt lbl_8024AE50
/* 8024AEAC 00247E0C 80 1F 00 00 */ lwz r0, 0(r31)
/* 8024AEB0 00247E10 90 1E 00 00 */ stw r0, 0(r30)
/* 8024AEB4 00247E14 BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 8024AEB8 00247E18 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8024AEBC 00247E1C 7C 08 03 A6 */ mtlr r0
/* 8024AEC0 00247E20 38 21 00 30 */ addi r1, r1, 0x30
/* 8024AEC4 00247E24 4E 80 00 20 */ blr
.global sub_8024aec8
sub_8024aec8:
/* 8024AEC8 00247E28 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8024AECC 00247E2C 7C 08 02 A6 */ mflr r0
/* 8024AED0 00247E30 90 01 00 34 */ stw r0, 0x34(r1)
/* 8024AED4 00247E34 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 8024AED8 00247E38 7C 9F 23 78 */ mr r31, r4
/* 8024AEDC 00247E3C 7C 7E 1B 78 */ mr r30, r3
/* 8024AEE0 00247E40 7C DB 33 78 */ mr r27, r6
/* 8024AEE4 00247E44 38 61 00 0C */ addi r3, r1, 0xc
/* 8024AEE8 00247E48 80 85 00 00 */ lwz r4, 0(r5)
/* 8024AEEC 00247E4C 80 1F 00 00 */ lwz r0, 0(r31)
/* 8024AEF0 00247E50 90 81 00 08 */ stw r4, 8(r1)
/* 8024AEF4 00247E54 38 81 00 08 */ addi r4, r1, 8
/* 8024AEF8 00247E58 90 01 00 0C */ stw r0, 0xc(r1)
/* 8024AEFC 00247E5C 48 00 04 0D */ bl sub_8024b308
/* 8024AF00 00247E60 80 1F 00 00 */ lwz r0, 0(r31)
/* 8024AF04 00247E64 7C 7D 1B 78 */ mr r29, r3
/* 8024AF08 00247E68 90 01 00 10 */ stw r0, 0x10(r1)
/* 8024AF0C 00247E6C 48 00 00 58 */ b lbl_8024AF64
lbl_8024AF10:
/* 8024AF10 00247E70 57 A3 0F FE */ srwi r3, r29, 0x1f
/* 8024AF14 00247E74 80 1F 00 00 */ lwz r0, 0(r31)
/* 8024AF18 00247E78 7C 83 EA 14 */ add r4, r3, r29
/* 8024AF1C 00247E7C 38 61 00 10 */ addi r3, r1, 0x10
/* 8024AF20 00247E80 7C 9C 0E 70 */ srawi r28, r4, 1
/* 8024AF24 00247E84 90 01 00 10 */ stw r0, 0x10(r1)
/* 8024AF28 00247E88 7F 84 E3 78 */ mr r4, r28
/* 8024AF2C 00247E8C 48 00 03 45 */ bl sub_8024b270
/* 8024AF30 00247E90 80 81 00 10 */ lwz r4, 0x10(r1)
/* 8024AF34 00247E94 80 1B 00 00 */ lwz r0, 0(r27)
/* 8024AF38 00247E98 80 64 00 00 */ lwz r3, 0(r4)
/* 8024AF3C 00247E9C 7C 03 00 40 */ cmplw r3, r0
/* 8024AF40 00247EA0 40 80 00 20 */ bge lbl_8024AF60
/* 8024AF44 00247EA4 90 9F 00 00 */ stw r4, 0(r31)
/* 8024AF48 00247EA8 7C 7C E8 50 */ subf r3, r28, r29
/* 8024AF4C 00247EAC 3B A3 FF FF */ addi r29, r3, -1
/* 8024AF50 00247EB0 80 7F 00 00 */ lwz r3, 0(r31)
/* 8024AF54 00247EB4 38 03 00 4C */ addi r0, r3, 0x4c
/* 8024AF58 00247EB8 90 1F 00 00 */ stw r0, 0(r31)
/* 8024AF5C 00247EBC 48 00 00 08 */ b lbl_8024AF64
lbl_8024AF60:
/* 8024AF60 00247EC0 7F 9D E3 78 */ mr r29, r28
lbl_8024AF64:
/* 8024AF64 00247EC4 2C 1D 00 00 */ cmpwi r29, 0
/* 8024AF68 00247EC8 41 81 FF A8 */ bgt lbl_8024AF10
/* 8024AF6C 00247ECC 80 1F 00 00 */ lwz r0, 0(r31)
/* 8024AF70 00247ED0 90 1E 00 00 */ stw r0, 0(r30)
/* 8024AF74 00247ED4 BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 8024AF78 00247ED8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8024AF7C 00247EDC 7C 08 03 A6 */ mtlr r0
/* 8024AF80 00247EE0 38 21 00 30 */ addi r1, r1, 0x30
/* 8024AF84 00247EE4 4E 80 00 20 */ blr
.global sub_8024af88
sub_8024af88:
/* 8024AF88 00247EE8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8024AF8C 00247EEC 7C 08 02 A6 */ mflr r0
/* 8024AF90 00247EF0 90 01 00 34 */ stw r0, 0x34(r1)
/* 8024AF94 00247EF4 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8024AF98 00247EF8 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8024AF9C 00247EFC 7C 9E 23 78 */ mr r30, r4
/* 8024AFA0 00247F00 93 A1 00 24 */ stw r29, 0x24(r1)
/* 8024AFA4 00247F04 7C 7D 1B 78 */ mr r29, r3
/* 8024AFA8 00247F08 80 03 00 08 */ lwz r0, 8(r3)
/* 8024AFAC 00247F0C 7C 1E 00 00 */ cmpw r30, r0
/* 8024AFB0 00247F10 40 81 00 8C */ ble lbl_8024B03C
/* 8024AFB4 00247F14 1C 7E 00 4C */ mulli r3, r30, 0x4c
/* 8024AFB8 00247F18 2C 03 00 00 */ cmpwi r3, 0
/* 8024AFBC 00247F1C 40 82 00 0C */ bne lbl_8024AFC8
/* 8024AFC0 00247F20 3B E0 00 00 */ li r31, 0
/* 8024AFC4 00247F24 48 00 00 18 */ b lbl_8024AFDC
lbl_8024AFC8:
/* 8024AFC8 00247F28 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024AFCC 00247F2C 38 A0 00 00 */ li r5, 0
/* 8024AFD0 00247F30 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024AFD4 00247F34 48 0C A8 45 */ bl __nwa__FUlPCcPCc
/* 8024AFD8 00247F38 7C 7F 1B 78 */ mr r31, r3
lbl_8024AFDC:
/* 8024AFDC 00247F3C 80 1D 00 04 */ lwz r0, 4(r29)
/* 8024AFE0 00247F40 7F E5 FB 78 */ mr r5, r31
/* 8024AFE4 00247F44 80 DD 00 0C */ lwz r6, 0xc(r29)
/* 8024AFE8 00247F48 38 61 00 14 */ addi r3, r1, 0x14
/* 8024AFEC 00247F4C 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 8024AFF0 00247F50 38 81 00 0C */ addi r4, r1, 0xc
/* 8024AFF4 00247F54 7C C6 02 14 */ add r6, r6, r0
/* 8024AFF8 00247F58 90 C1 00 0C */ stw r6, 0xc(r1)
/* 8024AFFC 00247F5C 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 8024B000 00247F60 90 C1 00 08 */ stw r6, 8(r1)
/* 8024B004 00247F64 90 01 00 10 */ stw r0, 0x10(r1)
/* 8024B008 00247F68 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024B00C 00247F6C 48 00 00 4D */ bl sub_8024b058
/* 8024B010 00247F70 80 1D 00 04 */ lwz r0, 4(r29)
/* 8024B014 00247F74 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 8024B018 00247F78 1C 00 00 4C */ mulli r0, r0, 0x4c
/* 8024B01C 00247F7C 7C 83 02 14 */ add r4, r3, r0
/* 8024B020 00247F80 4B FF FA A9 */ bl sub_8024aac8
/* 8024B024 00247F84 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 8024B028 00247F88 28 03 00 00 */ cmplwi r3, 0
/* 8024B02C 00247F8C 41 82 00 08 */ beq lbl_8024B034
/* 8024B030 00247F90 48 0C A9 01 */ bl Free__7CMemoryFPCv
lbl_8024B034:
/* 8024B034 00247F94 93 FD 00 0C */ stw r31, 0xc(r29)
/* 8024B038 00247F98 93 DD 00 08 */ stw r30, 8(r29)
lbl_8024B03C:
/* 8024B03C 00247F9C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8024B040 00247FA0 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8024B044 00247FA4 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8024B048 00247FA8 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 8024B04C 00247FAC 7C 08 03 A6 */ mtlr r0
/* 8024B050 00247FB0 38 21 00 30 */ addi r1, r1, 0x30
/* 8024B054 00247FB4 4E 80 00 20 */ blr
.global sub_8024b058
sub_8024b058:
/* 8024B058 00247FB8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8024B05C 00247FBC 7C 08 02 A6 */ mflr r0
/* 8024B060 00247FC0 90 01 00 24 */ stw r0, 0x24(r1)
/* 8024B064 00247FC4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8024B068 00247FC8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8024B06C 00247FCC 7C BE 2B 78 */ mr r30, r5
/* 8024B070 00247FD0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8024B074 00247FD4 7C 9D 23 78 */ mr r29, r4
/* 8024B078 00247FD8 83 E3 00 00 */ lwz r31, 0(r3)
/* 8024B07C 00247FDC 48 00 00 18 */ b lbl_8024B094
lbl_8024B080:
/* 8024B080 00247FE0 7F C3 F3 78 */ mr r3, r30
/* 8024B084 00247FE4 7F E4 FB 78 */ mr r4, r31
/* 8024B088 00247FE8 4B FF FA 8D */ bl sub_8024ab14
/* 8024B08C 00247FEC 3B DE 00 4C */ addi r30, r30, 0x4c
/* 8024B090 00247FF0 3B FF 00 4C */ addi r31, r31, 0x4c
lbl_8024B094:
/* 8024B094 00247FF4 80 1D 00 00 */ lwz r0, 0(r29)
/* 8024B098 00247FF8 7C 1F 00 40 */ cmplw r31, r0
/* 8024B09C 00247FFC 40 82 FF E4 */ bne lbl_8024B080
/* 8024B0A0 00248000 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8024B0A4 00248004 7F C3 F3 78 */ mr r3, r30
/* 8024B0A8 00248008 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8024B0AC 0024800C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8024B0B0 00248010 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8024B0B4 00248014 7C 08 03 A6 */ mtlr r0
/* 8024B0B8 00248018 38 21 00 20 */ addi r1, r1, 0x20
/* 8024B0BC 0024801C 4E 80 00 20 */ blr
.global sub_8024b0c0
sub_8024b0c0:
/* 8024B0C0 00248020 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8024B0C4 00248024 7C 08 02 A6 */ mflr r0
/* 8024B0C8 00248028 90 01 00 34 */ stw r0, 0x34(r1)
/* 8024B0CC 0024802C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8024B0D0 00248030 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8024B0D4 00248034 7C 9E 23 78 */ mr r30, r4
/* 8024B0D8 00248038 93 A1 00 24 */ stw r29, 0x24(r1)
/* 8024B0DC 0024803C 7C 7D 1B 78 */ mr r29, r3
/* 8024B0E0 00248040 80 03 00 08 */ lwz r0, 8(r3)
/* 8024B0E4 00248044 7C 1E 00 00 */ cmpw r30, r0
/* 8024B0E8 00248048 40 81 00 8C */ ble lbl_8024B174
/* 8024B0EC 0024804C 1C 7E 00 3C */ mulli r3, r30, 0x3c
/* 8024B0F0 00248050 2C 03 00 00 */ cmpwi r3, 0
/* 8024B0F4 00248054 40 82 00 0C */ bne lbl_8024B100
/* 8024B0F8 00248058 3B E0 00 00 */ li r31, 0
/* 8024B0FC 0024805C 48 00 00 18 */ b lbl_8024B114
lbl_8024B100:
/* 8024B100 00248060 3C 80 80 3D */ lis r4, lbl_803D4780@ha
/* 8024B104 00248064 38 A0 00 00 */ li r5, 0
/* 8024B108 00248068 38 84 47 80 */ addi r4, r4, lbl_803D4780@l
/* 8024B10C 0024806C 48 0C A7 0D */ bl __nwa__FUlPCcPCc
/* 8024B110 00248070 7C 7F 1B 78 */ mr r31, r3
lbl_8024B114:
/* 8024B114 00248074 80 1D 00 04 */ lwz r0, 4(r29)
/* 8024B118 00248078 7F E5 FB 78 */ mr r5, r31
/* 8024B11C 0024807C 80 DD 00 0C */ lwz r6, 0xc(r29)
/* 8024B120 00248080 38 61 00 14 */ addi r3, r1, 0x14
/* 8024B124 00248084 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 8024B128 00248088 38 81 00 0C */ addi r4, r1, 0xc
/* 8024B12C 0024808C 7C C6 02 14 */ add r6, r6, r0
/* 8024B130 00248090 90 C1 00 0C */ stw r6, 0xc(r1)
/* 8024B134 00248094 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 8024B138 00248098 90 C1 00 08 */ stw r6, 8(r1)
/* 8024B13C 0024809C 90 01 00 10 */ stw r0, 0x10(r1)
/* 8024B140 002480A0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024B144 002480A4 48 00 00 99 */ bl sub_8024b1dc
/* 8024B148 002480A8 80 1D 00 04 */ lwz r0, 4(r29)
/* 8024B14C 002480AC 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 8024B150 002480B0 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 8024B154 002480B4 7C 83 02 14 */ add r4, r3, r0
/* 8024B158 002480B8 48 00 00 39 */ bl sub_8024b190
/* 8024B15C 002480BC 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 8024B160 002480C0 28 03 00 00 */ cmplwi r3, 0
/* 8024B164 002480C4 41 82 00 08 */ beq lbl_8024B16C
/* 8024B168 002480C8 48 0C A7 C9 */ bl Free__7CMemoryFPCv
lbl_8024B16C:
/* 8024B16C 002480CC 93 FD 00 0C */ stw r31, 0xc(r29)
/* 8024B170 002480D0 93 DD 00 08 */ stw r30, 8(r29)
lbl_8024B174:
/* 8024B174 002480D4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8024B178 002480D8 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8024B17C 002480DC 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8024B180 002480E0 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 8024B184 002480E4 7C 08 03 A6 */ mtlr r0
/* 8024B188 002480E8 38 21 00 30 */ addi r1, r1, 0x30
/* 8024B18C 002480EC 4E 80 00 20 */ blr
.global sub_8024b190
sub_8024b190:
/* 8024B190 002480F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024B194 002480F4 7C 08 02 A6 */ mflr r0
/* 8024B198 002480F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024B19C 002480FC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024B1A0 00248100 7C 7F 1B 78 */ mr r31, r3
/* 8024B1A4 00248104 93 C1 00 08 */ stw r30, 8(r1)
/* 8024B1A8 00248108 7C 9E 23 78 */ mr r30, r4
/* 8024B1AC 0024810C 48 00 00 10 */ b lbl_8024B1BC
lbl_8024B1B0:
/* 8024B1B0 00248110 7F E3 FB 78 */ mr r3, r31
/* 8024B1B4 00248114 4B FF E4 D5 */ bl sub_80249688
/* 8024B1B8 00248118 3B FF 00 3C */ addi r31, r31, 0x3c
lbl_8024B1BC:
/* 8024B1BC 0024811C 7C 1F F0 40 */ cmplw r31, r30
/* 8024B1C0 00248120 40 82 FF F0 */ bne lbl_8024B1B0
/* 8024B1C4 00248124 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024B1C8 00248128 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024B1CC 0024812C 83 C1 00 08 */ lwz r30, 8(r1)
/* 8024B1D0 00248130 7C 08 03 A6 */ mtlr r0
/* 8024B1D4 00248134 38 21 00 10 */ addi r1, r1, 0x10
/* 8024B1D8 00248138 4E 80 00 20 */ blr
.global sub_8024b1dc
sub_8024b1dc:
/* 8024B1DC 0024813C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8024B1E0 00248140 7C 08 02 A6 */ mflr r0
/* 8024B1E4 00248144 90 01 00 24 */ stw r0, 0x24(r1)
/* 8024B1E8 00248148 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8024B1EC 0024814C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8024B1F0 00248150 7C BE 2B 78 */ mr r30, r5
/* 8024B1F4 00248154 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8024B1F8 00248158 7C 9D 23 78 */ mr r29, r4
/* 8024B1FC 0024815C 83 E3 00 00 */ lwz r31, 0(r3)
/* 8024B200 00248160 48 00 00 18 */ b lbl_8024B218
lbl_8024B204:
/* 8024B204 00248164 7F C3 F3 78 */ mr r3, r30
/* 8024B208 00248168 7F E4 FB 78 */ mr r4, r31
/* 8024B20C 0024816C 4B FF F3 F9 */ bl sub_8024a604
/* 8024B210 00248170 3B DE 00 3C */ addi r30, r30, 0x3c
/* 8024B214 00248174 3B FF 00 3C */ addi r31, r31, 0x3c
lbl_8024B218:
/* 8024B218 00248178 80 1D 00 00 */ lwz r0, 0(r29)
/* 8024B21C 0024817C 7C 1F 00 40 */ cmplw r31, r0
/* 8024B220 00248180 40 82 FF E4 */ bne lbl_8024B204
/* 8024B224 00248184 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8024B228 00248188 7F C3 F3 78 */ mr r3, r30
/* 8024B22C 0024818C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8024B230 00248190 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8024B234 00248194 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8024B238 00248198 7C 08 03 A6 */ mtlr r0
/* 8024B23C 0024819C 38 21 00 20 */ addi r1, r1, 0x20
/* 8024B240 002481A0 4E 80 00 20 */ blr
.global sub_8024b244
sub_8024b244:
/* 8024B244 002481A4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024B248 002481A8 7C 08 02 A6 */ mflr r0
/* 8024B24C 002481AC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024B250 002481B0 38 A1 00 0C */ addi r5, r1, 0xc
/* 8024B254 002481B4 88 01 00 08 */ lbz r0, 8(r1)
/* 8024B258 002481B8 98 01 00 0C */ stb r0, 0xc(r1)
/* 8024B25C 002481BC 48 00 00 55 */ bl sub_8024b2b0
/* 8024B260 002481C0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024B264 002481C4 7C 08 03 A6 */ mtlr r0
/* 8024B268 002481C8 38 21 00 10 */ addi r1, r1, 0x10
/* 8024B26C 002481CC 4E 80 00 20 */ blr
.global sub_8024b270
sub_8024b270:
/* 8024B270 002481D0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024B274 002481D4 7C 08 02 A6 */ mflr r0
/* 8024B278 002481D8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024B27C 002481DC 38 A1 00 0C */ addi r5, r1, 0xc
/* 8024B280 002481E0 88 01 00 08 */ lbz r0, 8(r1)
/* 8024B284 002481E4 98 01 00 0C */ stb r0, 0xc(r1)
/* 8024B288 002481E8 48 00 00 15 */ bl sub_8024b29c
/* 8024B28C 002481EC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024B290 002481F0 7C 08 03 A6 */ mtlr r0
/* 8024B294 002481F4 38 21 00 10 */ addi r1, r1, 0x10
/* 8024B298 002481F8 4E 80 00 20 */ blr
.global sub_8024b29c
sub_8024b29c:
/* 8024B29C 002481FC 1C 04 00 4C */ mulli r0, r4, 0x4c
/* 8024B2A0 00248200 80 83 00 00 */ lwz r4, 0(r3)
/* 8024B2A4 00248204 7C 04 02 14 */ add r0, r4, r0
/* 8024B2A8 00248208 90 03 00 00 */ stw r0, 0(r3)
/* 8024B2AC 0024820C 4E 80 00 20 */ blr
.global sub_8024b2b0
sub_8024b2b0:
/* 8024B2B0 00248210 1C 04 00 4C */ mulli r0, r4, 0x4c
/* 8024B2B4 00248214 80 83 00 00 */ lwz r4, 0(r3)
/* 8024B2B8 00248218 7C 04 02 14 */ add r0, r4, r0
/* 8024B2BC 0024821C 90 03 00 00 */ stw r0, 0(r3)
/* 8024B2C0 00248220 4E 80 00 20 */ blr
.global sub_8024b2c4
sub_8024b2c4:
/* 8024B2C4 00248224 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8024B2C8 00248228 7C 08 02 A6 */ mflr r0
/* 8024B2CC 0024822C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8024B2D0 00248230 38 A1 00 0C */ addi r5, r1, 0xc
/* 8024B2D4 00248234 88 E1 00 08 */ lbz r7, 8(r1)
/* 8024B2D8 00248238 80 C4 00 00 */ lwz r6, 0(r4)
/* 8024B2DC 0024823C 38 81 00 10 */ addi r4, r1, 0x10
/* 8024B2E0 00248240 80 03 00 00 */ lwz r0, 0(r3)
/* 8024B2E4 00248244 38 61 00 14 */ addi r3, r1, 0x14
/* 8024B2E8 00248248 90 C1 00 10 */ stw r6, 0x10(r1)
/* 8024B2EC 0024824C 98 E1 00 0C */ stb r7, 0xc(r1)
/* 8024B2F0 00248250 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024B2F4 00248254 48 00 00 59 */ bl sub_8024b34c
/* 8024B2F8 00248258 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8024B2FC 0024825C 7C 08 03 A6 */ mtlr r0
/* 8024B300 00248260 38 21 00 20 */ addi r1, r1, 0x20
/* 8024B304 00248264 4E 80 00 20 */ blr
.global sub_8024b308
sub_8024b308:
/* 8024B308 00248268 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8024B30C 0024826C 7C 08 02 A6 */ mflr r0
/* 8024B310 00248270 90 01 00 24 */ stw r0, 0x24(r1)
/* 8024B314 00248274 38 A1 00 0C */ addi r5, r1, 0xc
/* 8024B318 00248278 88 E1 00 08 */ lbz r7, 8(r1)
/* 8024B31C 0024827C 80 C4 00 00 */ lwz r6, 0(r4)
/* 8024B320 00248280 38 81 00 10 */ addi r4, r1, 0x10
/* 8024B324 00248284 80 03 00 00 */ lwz r0, 0(r3)
/* 8024B328 00248288 38 61 00 14 */ addi r3, r1, 0x14
/* 8024B32C 0024828C 90 C1 00 10 */ stw r6, 0x10(r1)
/* 8024B330 00248290 98 E1 00 0C */ stb r7, 0xc(r1)
/* 8024B334 00248294 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024B338 00248298 48 00 00 3D */ bl sub_8024b374
/* 8024B33C 0024829C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8024B340 002482A0 7C 08 03 A6 */ mtlr r0
/* 8024B344 002482A4 38 21 00 20 */ addi r1, r1, 0x20
/* 8024B348 002482A8 4E 80 00 20 */ blr
.global sub_8024b34c
sub_8024b34c:
/* 8024B34C 002482AC 80 A3 00 00 */ lwz r5, 0(r3)
/* 8024B350 002482B0 3C 60 6B CA */ lis r3, 0x6BCA1AF3@ha
/* 8024B354 002482B4 80 04 00 00 */ lwz r0, 0(r4)
/* 8024B358 002482B8 38 63 1A F3 */ addi r3, r3, 0x6BCA1AF3@l
/* 8024B35C 002482BC 7C 05 00 50 */ subf r0, r5, r0
/* 8024B360 002482C0 7C 03 00 96 */ mulhw r0, r3, r0
/* 8024B364 002482C4 7C 00 2E 70 */ srawi r0, r0, 5
/* 8024B368 002482C8 54 03 0F FE */ srwi r3, r0, 0x1f
/* 8024B36C 002482CC 7C 60 1A 14 */ add r3, r0, r3
/* 8024B370 002482D0 4E 80 00 20 */ blr
.global sub_8024b374
sub_8024b374:
/* 8024B374 002482D4 80 A3 00 00 */ lwz r5, 0(r3)
/* 8024B378 002482D8 3C 60 6B CA */ lis r3, 0x6BCA1AF3@ha
/* 8024B37C 002482DC 80 04 00 00 */ lwz r0, 0(r4)
/* 8024B380 002482E0 38 63 1A F3 */ addi r3, r3, 0x6BCA1AF3@l
/* 8024B384 002482E4 7C 05 00 50 */ subf r0, r5, r0
/* 8024B388 002482E8 7C 03 00 96 */ mulhw r0, r3, r0
/* 8024B38C 002482EC 7C 00 2E 70 */ srawi r0, r0, 5
/* 8024B390 002482F0 54 03 0F FE */ srwi r3, r0, 0x1f
/* 8024B394 002482F4 7C 60 1A 14 */ add r3, r0, r3
/* 8024B398 002482F8 4E 80 00 20 */ blr