.include "macros.inc" .section .ctors, "wa" lbl_ctor: .4byte __sinit_CWorld_cpp .section .data .balign 8 .global lbl_803D9FC0 lbl_803D9FC0: # ROM: 0x3D6FC0 .4byte 0 .4byte 0 .4byte __dt__11CDummyWorldFv .4byte IGetWorldAssetId__11CDummyWorldCFv .4byte IGetStringTableAssetId__11CDummyWorldCFv .4byte IGetSaveWorldAssetId__11CDummyWorldCFv .4byte IGetMapWorld__11CDummyWorldCFv .4byte IMapWorld__11CDummyWorldFv .4byte IGetAreaAlways__11CDummyWorldCF7TAreaId .4byte IGetCurrentAreaId__11CDummyWorldCFv .4byte IGetAreaId__11CDummyWorldCF7TAreaId .4byte ICheckWorldComplete__11CDummyWorldFv .4byte IGetDefaultAudioTrack__11CDummyWorldCFv .4byte IGetAreaCount__11CDummyWorldFv .global __vt__11CDvdRequest __vt__11CDvdRequest: # ROM: 0x3D6FF8 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .global lbl_803DA014 lbl_803DA014: # ROM: 0x3D7014 .4byte 0 .4byte 0 .4byte __dt__6CWorldFv .4byte IGetWorldAssetId__6CWorldCFv .4byte IGetStringTableAssetId__6CWorldCFv .4byte IGetSaveWorldAssetId__6CWorldCFv .4byte IGetMapWorld__6CWorldCFv .4byte IMapWorld__6CWorldFv .4byte IGetAreaAlways__6CWorldCF7TAreaId .4byte IGetCurrentAreaId__6CWorldCFv .4byte IGetAreaId__6CWorldCF7TAreaId .4byte ICheckWorldComplete__6CWorldFv .4byte IGetDefaultAudioTrack__6CWorldCFv .4byte IGetGameAreas__6CWorldCFv .global lbl_803DA04C lbl_803DA04C: # ROM: 0x3D704C .4byte 0 .4byte 0 .4byte __dt__6IWorldFv .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .4byte 0 .section .sbss .balign 8 # CWorld .global lbl_805A8DD8 lbl_805A8DD8: .skip 0x4 .global lbl_805A8DDC lbl_805A8DDC: .skip 0x4 .global lbl_805A8DE0 lbl_805A8DE0: .skip 0x4 .global lbl_805A8DE4 lbl_805A8DE4: .skip 0x4 .section .sdata2, "a" .balign 8 .global lbl_805AA3B0 lbl_805AA3B0: # ROM: 0x3F6C50 .4byte 0x3F7FBE77 .global lbl_805AA3B4 lbl_805AA3B4: # ROM: 0x3F6C54 .float 1.0 .global lbl_805AA3B8 lbl_805AA3B8: # ROM: 0x3F6C58 .float 0.125 .global lbl_805AA3BC lbl_805AA3BC: # ROM: 0x3F6C5C .4byte 0x42FE0000 .global lbl_805AA3C0 lbl_805AA3C0: # ROM: 0x3F6C60 .4byte 0 .4byte 0 .section .text, "ax" .global CyclePauseState__6CWorldFv CyclePauseState__6CWorldFv: /* 80055D60 00052CC0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80055D64 00052CC4 7C 08 02 A6 */ mflr r0 /* 80055D68 00052CC8 90 01 00 14 */ stw r0, 0x14(r1) /* 80055D6C 00052CCC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80055D70 00052CD0 7C 7F 1B 78 */ mr r31, r3 /* 80055D74 00052CD4 88 03 00 70 */ lbz r0, 0x70(r3) /* 80055D78 00052CD8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80055D7C 00052CDC 40 82 00 18 */ bne lbl_80055D94 /* 80055D80 00052CE0 38 80 00 01 */ li r4, 1 /* 80055D84 00052CE4 48 00 02 71 */ bl SetLoadPauseState__6CWorldFb /* 80055D88 00052CE8 7F E3 FB 78 */ mr r3, r31 /* 80055D8C 00052CEC 38 80 00 00 */ li r4, 0 /* 80055D90 00052CF0 48 00 02 65 */ bl SetLoadPauseState__6CWorldFb lbl_80055D94: /* 80055D94 00052CF4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80055D98 00052CF8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80055D9C 00052CFC 7C 08 03 A6 */ mtlr r0 /* 80055DA0 00052D00 38 21 00 10 */ addi r1, r1, 0x10 /* 80055DA4 00052D04 4E 80 00 20 */ blr .global StopSounds__6CWorldFv StopSounds__6CWorldFv: /* 80055DA8 00052D08 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80055DAC 00052D0C 7C 08 02 A6 */ mflr r0 /* 80055DB0 00052D10 90 01 00 24 */ stw r0, 0x24(r1) /* 80055DB4 00052D14 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80055DB8 00052D18 93 C1 00 18 */ stw r30, 0x18(r1) /* 80055DBC 00052D1C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80055DC0 00052D20 7C 7D 1B 78 */ mr r29, r3 /* 80055DC4 00052D24 3B FD 00 CC */ addi r31, r29, 0xcc /* 80055DC8 00052D28 7F FE FB 78 */ mr r30, r31 /* 80055DCC 00052D2C 48 00 00 18 */ b lbl_80055DE4 lbl_80055DD0: /* 80055DD0 00052D30 80 1E 00 04 */ lwz r0, 4(r30) /* 80055DD4 00052D34 38 61 00 08 */ addi r3, r1, 8 /* 80055DD8 00052D38 90 01 00 08 */ stw r0, 8(r1) /* 80055DDC 00052D3C 48 29 40 A9 */ bl RemoveEmitter__11CSfxManagerF10CSfxHandle /* 80055DE0 00052D40 3B DE 00 08 */ addi r30, r30, 8 lbl_80055DE4: /* 80055DE4 00052D44 80 BD 00 C8 */ lwz r5, 0xc8(r29) /* 80055DE8 00052D48 54 A0 18 38 */ slwi r0, r5, 3 /* 80055DEC 00052D4C 7C 1F 02 14 */ add r0, r31, r0 /* 80055DF0 00052D50 7C 1E 00 40 */ cmplw r30, r0 /* 80055DF4 00052D54 40 82 FF DC */ bne lbl_80055DD0 /* 80055DF8 00052D58 2C 05 00 00 */ cmpwi r5, 0 /* 80055DFC 00052D5C 38 60 00 00 */ li r3, 0 /* 80055E00 00052D60 40 81 00 40 */ ble lbl_80055E40 /* 80055E04 00052D64 2C 05 00 08 */ cmpwi r5, 8 /* 80055E08 00052D68 38 85 FF F8 */ addi r4, r5, -8 /* 80055E0C 00052D6C 40 81 00 20 */ ble lbl_80055E2C /* 80055E10 00052D70 38 04 00 07 */ addi r0, r4, 7 /* 80055E14 00052D74 54 00 E8 FE */ srwi r0, r0, 3 /* 80055E18 00052D78 7C 09 03 A6 */ mtctr r0 /* 80055E1C 00052D7C 2C 04 00 00 */ cmpwi r4, 0 /* 80055E20 00052D80 40 81 00 0C */ ble lbl_80055E2C lbl_80055E24: /* 80055E24 00052D84 38 63 00 08 */ addi r3, r3, 8 /* 80055E28 00052D88 42 00 FF FC */ bdnz lbl_80055E24 lbl_80055E2C: /* 80055E2C 00052D8C 7C 03 28 50 */ subf r0, r3, r5 /* 80055E30 00052D90 7C 09 03 A6 */ mtctr r0 /* 80055E34 00052D94 7C 03 28 00 */ cmpw r3, r5 /* 80055E38 00052D98 40 80 00 08 */ bge lbl_80055E40 lbl_80055E3C: /* 80055E3C 00052D9C 42 00 00 00 */ bdnz lbl_80055E3C lbl_80055E40: /* 80055E40 00052DA0 38 00 00 00 */ li r0, 0 /* 80055E44 00052DA4 90 1D 00 C8 */ stw r0, 0xc8(r29) /* 80055E48 00052DA8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80055E4C 00052DAC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80055E50 00052DB0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80055E54 00052DB4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80055E58 00052DB8 7C 08 03 A6 */ mtlr r0 /* 80055E5C 00052DBC 38 21 00 20 */ addi r1, r1, 0x20 /* 80055E60 00052DC0 4E 80 00 20 */ blr .global StopSound__6CWorldFs StopSound__6CWorldFs: /* 80055E64 00052DC4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80055E68 00052DC8 7C 08 02 A6 */ mflr r0 /* 80055E6C 00052DCC 90 01 00 24 */ stw r0, 0x24(r1) /* 80055E70 00052DD0 54 80 04 3E */ clrlwi r0, r4, 0x10 /* 80055E74 00052DD4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80055E78 00052DD8 93 C1 00 18 */ stw r30, 0x18(r1) /* 80055E7C 00052DDC 7C 7E 1B 78 */ mr r30, r3 /* 80055E80 00052DE0 3B FE 00 CC */ addi r31, r30, 0xcc /* 80055E84 00052DE4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80055E88 00052DE8 7F FD FB 78 */ mr r29, r31 /* 80055E8C 00052DEC 80 63 00 C8 */ lwz r3, 0xc8(r3) /* 80055E90 00052DF0 54 63 18 38 */ slwi r3, r3, 3 /* 80055E94 00052DF4 7C 9F 1A 14 */ add r4, r31, r3 /* 80055E98 00052DF8 48 00 00 80 */ b lbl_80055F18 lbl_80055E9C: /* 80055E9C 00052DFC A0 7D 00 00 */ lhz r3, 0(r29) /* 80055EA0 00052E00 7C 03 00 40 */ cmplw r3, r0 /* 80055EA4 00052E04 40 82 00 70 */ bne lbl_80055F14 /* 80055EA8 00052E08 80 1D 00 04 */ lwz r0, 4(r29) /* 80055EAC 00052E0C 38 61 00 08 */ addi r3, r1, 8 /* 80055EB0 00052E10 90 01 00 08 */ stw r0, 8(r1) /* 80055EB4 00052E14 48 29 3F D1 */ bl RemoveEmitter__11CSfxManagerF10CSfxHandle /* 80055EB8 00052E18 7C 1D F8 40 */ cmplw r29, r31 /* 80055EBC 00052E1C 41 80 00 64 */ blt lbl_80055F20 /* 80055EC0 00052E20 80 1E 00 C8 */ lwz r0, 0xc8(r30) /* 80055EC4 00052E24 54 00 18 38 */ slwi r0, r0, 3 /* 80055EC8 00052E28 7C 1F 02 14 */ add r0, r31, r0 /* 80055ECC 00052E2C 7C 1D 00 40 */ cmplw r29, r0 /* 80055ED0 00052E30 40 80 00 50 */ bge lbl_80055F20 /* 80055ED4 00052E34 7F A5 EB 78 */ mr r5, r29 /* 80055ED8 00052E38 48 00 00 18 */ b lbl_80055EF0 lbl_80055EDC: /* 80055EDC 00052E3C A0 05 00 08 */ lhz r0, 8(r5) /* 80055EE0 00052E40 B0 05 00 00 */ sth r0, 0(r5) /* 80055EE4 00052E44 80 05 00 0C */ lwz r0, 0xc(r5) /* 80055EE8 00052E48 90 05 00 04 */ stw r0, 4(r5) /* 80055EEC 00052E4C 38 A5 00 08 */ addi r5, r5, 8 lbl_80055EF0: /* 80055EF0 00052E50 80 9E 00 C8 */ lwz r4, 0xc8(r30) /* 80055EF4 00052E54 54 83 18 38 */ slwi r3, r4, 3 /* 80055EF8 00052E58 38 03 FF F8 */ addi r0, r3, -8 /* 80055EFC 00052E5C 7C 1F 02 14 */ add r0, r31, r0 /* 80055F00 00052E60 7C 05 00 40 */ cmplw r5, r0 /* 80055F04 00052E64 41 80 FF D8 */ blt lbl_80055EDC /* 80055F08 00052E68 38 04 FF FF */ addi r0, r4, -1 /* 80055F0C 00052E6C 90 1E 00 C8 */ stw r0, 0xc8(r30) /* 80055F10 00052E70 48 00 00 10 */ b lbl_80055F20 lbl_80055F14: /* 80055F14 00052E74 3B BD 00 08 */ addi r29, r29, 8 lbl_80055F18: /* 80055F18 00052E78 7C 1D 20 40 */ cmplw r29, r4 /* 80055F1C 00052E7C 40 82 FF 80 */ bne lbl_80055E9C lbl_80055F20: /* 80055F20 00052E80 80 01 00 24 */ lwz r0, 0x24(r1) /* 80055F24 00052E84 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80055F28 00052E88 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80055F2C 00052E8C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80055F30 00052E90 7C 08 03 A6 */ mtlr r0 /* 80055F34 00052E94 38 21 00 20 */ addi r1, r1, 0x20 .global sub_80055f38 sub_80055f38: /* 80055F38 00052E98 4E 80 00 20 */ blr .global AddGlobalSound__6CWorldFUs10CSfxHandle AddGlobalSound__6CWorldFUs10CSfxHandle: /* 80055F3C 00052E9C 80 03 00 C8 */ lwz r0, 0xc8(r3) /* 80055F40 00052EA0 2C 00 00 0A */ cmpwi r0, 0xa /* 80055F44 00052EA4 4C 80 00 20 */ bgelr /* 80055F48 00052EA8 54 00 18 38 */ slwi r0, r0, 3 /* 80055F4C 00052EAC 80 C5 00 00 */ lwz r6, 0(r5) /* 80055F50 00052EB0 7C A3 02 14 */ add r5, r3, r0 /* 80055F54 00052EB4 54 80 04 3E */ clrlwi r0, r4, 0x10 /* 80055F58 00052EB8 34 A5 00 CC */ addic. r5, r5, 0xcc /* 80055F5C 00052EBC 41 82 00 0C */ beq lbl_80055F68 /* 80055F60 00052EC0 B0 05 00 00 */ sth r0, 0(r5) /* 80055F64 00052EC4 90 C5 00 04 */ stw r6, 4(r5) lbl_80055F68: /* 80055F68 00052EC8 80 83 00 C8 */ lwz r4, 0xc8(r3) /* 80055F6C 00052ECC 38 04 00 01 */ addi r0, r4, 1 /* 80055F70 00052ED0 90 03 00 C8 */ stw r0, 0xc8(r3) /* 80055F74 00052ED4 4E 80 00 20 */ blr .global IsPlayingSound__6CWorldCFUi IsPlayingSound__6CWorldCFUi: /* 80055F78 00052ED8 80 A3 00 C8 */ lwz r5, 0xc8(r3) /* 80055F7C 00052EDC 38 C3 00 CC */ addi r6, r3, 0xcc /* 80055F80 00052EE0 54 80 04 3E */ clrlwi r0, r4, 0x10 /* 80055F84 00052EE4 54 A3 18 38 */ slwi r3, r5, 3 /* 80055F88 00052EE8 7C 86 1A 14 */ add r4, r6, r3 /* 80055F8C 00052EEC 48 00 00 1C */ b lbl_80055FA8 lbl_80055F90: /* 80055F90 00052EF0 A0 66 00 00 */ lhz r3, 0(r6) /* 80055F94 00052EF4 7C 03 00 40 */ cmplw r3, r0 /* 80055F98 00052EF8 40 82 00 0C */ bne lbl_80055FA4 /* 80055F9C 00052EFC 38 60 00 01 */ li r3, 1 /* 80055FA0 00052F00 4E 80 00 20 */ blr lbl_80055FA4: /* 80055FA4 00052F04 38 C6 00 08 */ addi r6, r6, 8 lbl_80055FA8: /* 80055FA8 00052F08 7C 06 20 40 */ cmplw r6, r4 /* 80055FAC 00052F0C 40 82 FF E4 */ bne lbl_80055F90 /* 80055FB0 00052F10 38 60 00 00 */ li r3, 0 /* 80055FB4 00052F14 4E 80 00 20 */ blr .global MoveAreaToChain3__6CWorldF7TAreaId MoveAreaToChain3__6CWorldF7TAreaId: /* 80055FB8 00052F18 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80055FBC 00052F1C 7C 08 02 A6 */ mflr r0 /* 80055FC0 00052F20 38 A0 00 03 */ li r5, 3 /* 80055FC4 00052F24 90 01 00 14 */ stw r0, 0x14(r1) /* 80055FC8 00052F28 80 04 00 00 */ lwz r0, 0(r4) /* 80055FCC 00052F2C 80 C3 00 20 */ lwz r6, 0x20(r3) /* 80055FD0 00052F30 54 04 18 38 */ slwi r4, r0, 3 /* 80055FD4 00052F34 90 01 00 08 */ stw r0, 8(r1) /* 80055FD8 00052F38 38 04 00 04 */ addi r0, r4, 4 /* 80055FDC 00052F3C 7C 86 00 2E */ lwzx r4, r6, r0 /* 80055FE0 00052F40 48 00 1B 55 */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain /* 80055FE4 00052F44 80 01 00 14 */ lwz r0, 0x14(r1) /* 80055FE8 00052F48 7C 08 03 A6 */ mtlr r0 /* 80055FEC 00052F4C 38 21 00 10 */ addi r1, r1, 0x10 /* 80055FF0 00052F50 4E 80 00 20 */ blr .global SetLoadPauseState__6CWorldFb SetLoadPauseState__6CWorldFb: /* 80055FF4 00052F54 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80055FF8 00052F58 7C 08 02 A6 */ mflr r0 /* 80055FFC 00052F5C 90 01 00 24 */ stw r0, 0x24(r1) /* 80056000 00052F60 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80056004 00052F64 93 C1 00 18 */ stw r30, 0x18(r1) /* 80056008 00052F68 7C 9E 23 78 */ mr r30, r4 /* 8005600C 00052F6C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80056010 00052F70 7C 7D 1B 78 */ mr r29, r3 /* 80056014 00052F74 83 E3 00 54 */ lwz r31, 0x54(r3) /* 80056018 00052F78 48 00 00 14 */ b lbl_8005602C lbl_8005601C: /* 8005601C 00052F7C 7F E3 FB 78 */ mr r3, r31 /* 80056020 00052F80 7F C4 F3 78 */ mr r4, r30 /* 80056024 00052F84 48 00 82 39 */ bl SetLoadPauseState__9CGameAreaFb /* 80056028 00052F88 83 FF 01 30 */ lwz r31, 0x130(r31) lbl_8005602C: /* 8005602C 00052F8C 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) /* 80056030 00052F90 7C 00 F8 40 */ cmplw r0, r31 /* 80056034 00052F94 40 82 FF E8 */ bne lbl_8005601C /* 80056038 00052F98 88 1D 00 70 */ lbz r0, 0x70(r29) /* 8005603C 00052F9C 53 C0 36 72 */ rlwimi r0, r30, 6, 0x19, 0x19 /* 80056040 00052FA0 98 1D 00 70 */ stb r0, 0x70(r29) /* 80056044 00052FA4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80056048 00052FA8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8005604C 00052FAC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80056050 00052FB0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80056054 00052FB4 7C 08 03 A6 */ mtlr r0 /* 80056058 00052FB8 38 21 00 20 */ addi r1, r1, 0x20 /* 8005605C 00052FBC 4E 80 00 20 */ blr .global sub_80056060 sub_80056060: /* 80056060 00052FC0 3C 05 00 01 */ addis r0, r5, 1 /* 80056064 00052FC4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056068 00052FC8 28 00 FF FF */ cmplwi r0, 0xffff /* 8005606C 00052FCC 39 00 FF FF */ li r8, -1 /* 80056070 00052FD0 41 82 00 50 */ beq lbl_800560C0 /* 80056074 00052FD4 80 04 00 18 */ lwz r0, 0x18(r4) /* 80056078 00052FD8 39 20 00 00 */ li r9, 0 /* 8005607C 00052FDC 38 C0 00 00 */ li r6, 0 /* 80056080 00052FE0 7C 09 03 A6 */ mtctr r0 /* 80056084 00052FE4 2C 00 00 00 */ cmpwi r0, 0 /* 80056088 00052FE8 40 81 00 38 */ ble lbl_800560C0 lbl_8005608C: /* 8005608C 00052FEC 80 E4 00 20 */ lwz r7, 0x20(r4) /* 80056090 00052FF0 38 06 00 04 */ addi r0, r6, 4 /* 80056094 00052FF4 91 21 00 08 */ stw r9, 8(r1) /* 80056098 00052FF8 7C E7 00 2E */ lwzx r7, r7, r0 /* 8005609C 00052FFC 91 21 00 0C */ stw r9, 0xc(r1) /* 800560A0 00053000 80 07 00 88 */ lwz r0, 0x88(r7) /* 800560A4 00053004 7C 05 00 40 */ cmplw r5, r0 /* 800560A8 00053008 40 82 00 0C */ bne lbl_800560B4 /* 800560AC 0005300C 7D 28 4B 78 */ mr r8, r9 /* 800560B0 00053010 48 00 00 10 */ b lbl_800560C0 lbl_800560B4: /* 800560B4 00053014 39 29 00 01 */ addi r9, r9, 1 /* 800560B8 00053018 38 C6 00 08 */ addi r6, r6, 8 /* 800560BC 0005301C 42 00 FF D0 */ bdnz lbl_8005608C lbl_800560C0: /* 800560C0 00053020 91 03 00 00 */ stw r8, 0(r3) /* 800560C4 00053024 38 21 00 10 */ addi r1, r1, 0x10 /* 800560C8 00053028 4E 80 00 20 */ blr .global IGetAreaId__6CWorldCF7TAreaId IGetAreaId__6CWorldCF7TAreaId: /* 800560CC 0005302C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800560D0 00053030 7C 08 02 A6 */ mflr r0 /* 800560D4 00053034 90 01 00 14 */ stw r0, 0x14(r1) /* 800560D8 00053038 93 E1 00 0C */ stw r31, 0xc(r1) /* 800560DC 0005303C 7C 7F 1B 78 */ mr r31, r3 /* 800560E0 00053040 48 00 00 19 */ bl sub_800560f8 /* 800560E4 00053044 80 01 00 14 */ lwz r0, 0x14(r1) /* 800560E8 00053048 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800560EC 0005304C 7C 08 03 A6 */ mtlr r0 /* 800560F0 00053050 38 21 00 10 */ addi r1, r1, 0x10 /* 800560F4 00053054 4E 80 00 20 */ blr .global sub_800560f8 sub_800560f8: /* 800560F8 00053058 3C 05 00 01 */ addis r0, r5, 1 /* 800560FC 0005305C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056100 00053060 28 00 FF FF */ cmplwi r0, 0xffff /* 80056104 00053064 39 00 FF FF */ li r8, -1 /* 80056108 00053068 41 82 00 50 */ beq lbl_80056158 /* 8005610C 0005306C 80 04 00 18 */ lwz r0, 0x18(r4) /* 80056110 00053070 39 20 00 00 */ li r9, 0 /* 80056114 00053074 38 C0 00 00 */ li r6, 0 /* 80056118 00053078 7C 09 03 A6 */ mtctr r0 /* 8005611C 0005307C 2C 00 00 00 */ cmpwi r0, 0 /* 80056120 00053080 40 81 00 38 */ ble lbl_80056158 lbl_80056124: /* 80056124 00053084 80 E4 00 20 */ lwz r7, 0x20(r4) /* 80056128 00053088 38 06 00 04 */ addi r0, r6, 4 /* 8005612C 0005308C 91 21 00 08 */ stw r9, 8(r1) /* 80056130 00053090 7C E7 00 2E */ lwzx r7, r7, r0 /* 80056134 00053094 91 21 00 0C */ stw r9, 0xc(r1) /* 80056138 00053098 80 07 00 84 */ lwz r0, 0x84(r7) /* 8005613C 0005309C 7C 05 00 40 */ cmplw r5, r0 /* 80056140 000530A0 40 82 00 0C */ bne lbl_8005614C /* 80056144 000530A4 7D 28 4B 78 */ mr r8, r9 /* 80056148 000530A8 48 00 00 10 */ b lbl_80056158 lbl_8005614C: /* 8005614C 000530AC 39 29 00 01 */ addi r9, r9, 1 /* 80056150 000530B0 38 C6 00 08 */ addi r6, r6, 8 /* 80056154 000530B4 42 00 FF D0 */ bdnz lbl_80056124 lbl_80056158: /* 80056158 000530B8 91 03 00 00 */ stw r8, 0(r3) /* 8005615C 000530BC 38 21 00 10 */ addi r1, r1, 0x10 /* 80056160 000530C0 4E 80 00 20 */ blr .global AreSkyNeedsMet__6CWorldCFv AreSkyNeedsMet__6CWorldCFv: /* 80056164 000530C4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056168 000530C8 7C 08 02 A6 */ mflr r0 /* 8005616C 000530CC 90 01 00 14 */ stw r0, 0x14(r1) /* 80056170 000530D0 88 03 00 70 */ lbz r0, 0x70(r3) /* 80056174 000530D4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 80056178 000530D8 41 82 00 44 */ beq lbl_800561BC /* 8005617C 000530DC 88 03 00 C0 */ lbz r0, 0xc0(r3) /* 80056180 000530E0 28 00 00 00 */ cmplwi r0, 0 /* 80056184 000530E4 41 82 00 14 */ beq lbl_80056198 /* 80056188 000530E8 80 63 00 BC */ lwz r3, 0xbc(r3) /* 8005618C 000530EC 38 80 00 00 */ li r4, 0 /* 80056190 000530F0 48 2F F4 19 */ bl IsLoaded__6CModelCFi /* 80056194 000530F4 48 00 00 2C */ b lbl_800561C0 lbl_80056198: /* 80056198 000530F8 88 03 00 B0 */ lbz r0, 0xb0(r3) /* 8005619C 000530FC 28 00 00 00 */ cmplwi r0, 0 /* 800561A0 00053100 41 82 00 14 */ beq lbl_800561B4 /* 800561A4 00053104 80 63 00 AC */ lwz r3, 0xac(r3) /* 800561A8 00053108 38 80 00 00 */ li r4, 0 /* 800561AC 0005310C 48 2F F3 FD */ bl IsLoaded__6CModelCFi /* 800561B0 00053110 48 00 00 10 */ b lbl_800561C0 lbl_800561B4: /* 800561B4 00053114 38 60 00 00 */ li r3, 0 /* 800561B8 00053118 48 00 00 08 */ b lbl_800561C0 lbl_800561BC: /* 800561BC 0005311C 38 60 00 01 */ li r3, 1 lbl_800561C0: /* 800561C0 00053120 80 01 00 14 */ lwz r0, 0x14(r1) /* 800561C4 00053124 7C 08 03 A6 */ mtlr r0 /* 800561C8 00053128 38 21 00 10 */ addi r1, r1, 0x10 /* 800561CC 0005312C 4E 80 00 20 */ blr .global DrawSky__6CWorldCFRC12CTransform4f DrawSky__6CWorldCFRC12CTransform4f: /* 800561D0 00053130 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800561D4 00053134 7C 08 02 A6 */ mflr r0 /* 800561D8 00053138 90 01 00 24 */ stw r0, 0x24(r1) /* 800561DC 0005313C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800561E0 00053140 7C 7F 1B 78 */ mr r31, r3 /* 800561E4 00053144 93 C1 00 18 */ stw r30, 0x18(r1) /* 800561E8 00053148 7C 9E 23 78 */ mr r30, r4 /* 800561EC 0005314C 88 03 00 B0 */ lbz r0, 0xb0(r3) /* 800561F0 00053150 28 00 00 00 */ cmplwi r0, 0 /* 800561F4 00053154 40 82 00 10 */ bne lbl_80056204 /* 800561F8 00053158 88 1F 00 C0 */ lbz r0, 0xc0(r31) /* 800561FC 0005315C 28 00 00 00 */ cmplwi r0, 0 /* 80056200 00053160 41 82 00 D8 */ beq lbl_800562D8 lbl_80056204: /* 80056204 00053164 88 1F 00 70 */ lbz r0, 0x70(r31) /* 80056208 00053168 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 8005620C 0005316C 41 82 00 CC */ beq lbl_800562D8 /* 80056210 00053170 48 2B 67 6D */ bl DisableAllLights__9CGraphicsFv /* 80056214 00053174 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80056218 00053178 7F C4 F3 78 */ mr r4, r30 /* 8005621C 0005317C 81 83 00 00 */ lwz r12, 0(r3) /* 80056220 00053180 81 8C 00 30 */ lwz r12, 0x30(r12) /* 80056224 00053184 7D 89 03 A6 */ mtctr r12 /* 80056228 00053188 4E 80 04 21 */ bctrl /* 8005622C 0005318C 48 2F 3D 81 */ bl White__6CColorFv /* 80056230 00053190 7C 64 1B 78 */ mr r4, r3 /* 80056234 00053194 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80056238 00053198 81 83 00 00 */ lwz r12, 0(r3) /* 8005623C 0005319C 81 8C 00 BC */ lwz r12, 0xbc(r12) /* 80056240 000531A0 7D 89 03 A6 */ mtctr r12 /* 80056244 000531A4 4E 80 04 21 */ bctrl /* 80056248 000531A8 C0 22 86 90 */ lfs f1, lbl_805AA3B0@sda21(r2) /* 8005624C 000531AC C0 42 86 94 */ lfs f2, lbl_805AA3B4@sda21(r2) /* 80056250 000531B0 48 2B 41 91 */ bl SetDepthRange__9CGraphicsFff /* 80056254 000531B4 C0 22 86 94 */ lfs f1, lbl_805AA3B4@sda21(r2) /* 80056258 000531B8 38 80 00 00 */ li r4, 0 /* 8005625C 000531BC 38 00 00 03 */ li r0, 3 /* 80056260 000531C0 98 81 00 08 */ stb r4, 8(r1) /* 80056264 000531C4 FC 40 08 90 */ fmr f2, f1 /* 80056268 000531C8 38 61 00 0C */ addi r3, r1, 0xc /* 8005626C 000531CC FC 60 08 90 */ fmr f3, f1 /* 80056270 000531D0 98 81 00 09 */ stb r4, 9(r1) /* 80056274 000531D4 FC 80 08 90 */ fmr f4, f1 /* 80056278 000531D8 B0 01 00 0A */ sth r0, 0xa(r1) /* 8005627C 000531DC 48 30 D1 71 */ bl __ct__6CColorFffff /* 80056280 000531E0 A0 61 00 0A */ lhz r3, 0xa(r1) /* 80056284 000531E4 38 81 00 10 */ addi r4, r1, 0x10 /* 80056288 000531E8 88 1F 00 C0 */ lbz r0, 0xc0(r31) /* 8005628C 000531EC 54 63 00 3A */ rlwinm r3, r3, 0, 0, 0x1d /* 80056290 000531F0 88 E1 00 08 */ lbz r7, 8(r1) /* 80056294 000531F4 60 65 00 01 */ ori r5, r3, 1 /* 80056298 000531F8 88 C1 00 09 */ lbz r6, 9(r1) /* 8005629C 000531FC 80 61 00 0C */ lwz r3, 0xc(r1) /* 800562A0 00053200 28 00 00 00 */ cmplwi r0, 0 /* 800562A4 00053204 98 E1 00 10 */ stb r7, 0x10(r1) /* 800562A8 00053208 98 C1 00 11 */ stb r6, 0x11(r1) /* 800562AC 0005320C B0 A1 00 12 */ sth r5, 0x12(r1) /* 800562B0 00053210 90 61 00 14 */ stw r3, 0x14(r1) /* 800562B4 00053214 41 82 00 0C */ beq lbl_800562C0 /* 800562B8 00053218 38 7F 00 B4 */ addi r3, r31, 0xb4 /* 800562BC 0005321C 48 00 00 08 */ b lbl_800562C4 lbl_800562C0: /* 800562C0 00053220 38 7F 00 A4 */ addi r3, r31, 0xa4 lbl_800562C4: /* 800562C4 00053224 80 63 00 08 */ lwz r3, 8(r3) /* 800562C8 00053228 48 2F F9 0D */ bl Draw__6CModelCFRC11CModelFlags /* 800562CC 0005322C C0 22 86 98 */ lfs f1, lbl_805AA3B8@sda21(r2) /* 800562D0 00053230 C0 42 86 94 */ lfs f2, lbl_805AA3B4@sda21(r2) /* 800562D4 00053234 48 2B 41 0D */ bl SetDepthRange__9CGraphicsFff lbl_800562D8: /* 800562D8 00053238 80 01 00 24 */ lwz r0, 0x24(r1) /* 800562DC 0005323C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800562E0 00053240 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800562E4 00053244 7C 08 03 A6 */ mtlr r0 /* 800562E8 00053248 38 21 00 20 */ addi r1, r1, 0x20 /* 800562EC 0005324C 4E 80 00 20 */ blr .global PreRender__6CWorldFv PreRender__6CWorldFv: /* 800562F0 00053250 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800562F4 00053254 7C 08 02 A6 */ mflr r0 /* 800562F8 00053258 90 01 00 14 */ stw r0, 0x14(r1) /* 800562FC 0005325C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056300 00053260 83 E3 00 58 */ lwz r31, 0x58(r3) /* 80056304 00053264 48 00 00 10 */ b lbl_80056314 lbl_80056308: /* 80056308 00053268 7F E3 FB 78 */ mr r3, r31 /* 8005630C 0005326C 48 00 93 49 */ bl PreRender__9CGameAreaFv /* 80056310 00053270 83 FF 01 30 */ lwz r31, 0x130(r31) lbl_80056314: /* 80056314 00053274 80 0D A2 1C */ lwz r0, lbl_805A8DDC@sda21(r13) /* 80056318 00053278 7C 00 F8 40 */ cmplw r0, r31 /* 8005631C 0005327C 40 82 FF EC */ bne lbl_80056308 /* 80056320 00053280 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056324 00053284 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056328 00053288 7C 08 03 A6 */ mtlr r0 /* 8005632C 0005328C 38 21 00 10 */ addi r1, r1, 0x10 /* 80056330 00053290 4E 80 00 20 */ blr .global Update__6CWorldFf Update__6CWorldFf: /* 80056334 00053294 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80056338 00053298 7C 08 02 A6 */ mflr r0 /* 8005633C 0005329C 90 01 00 84 */ stw r0, 0x84(r1) /* 80056340 000532A0 38 00 00 00 */ li r0, 0 /* 80056344 000532A4 DB E1 00 78 */ stfd f31, 0x78(r1) /* 80056348 000532A8 FF E0 08 90 */ fmr f31, f1 /* 8005634C 000532AC BF 41 00 60 */ stmw r26, 0x60(r1) /* 80056350 000532B0 7C 7C 1B 78 */ mr r28, r3 /* 80056354 000532B4 3B E0 00 00 */ li r31, 0 /* 80056358 000532B8 3B C0 00 00 */ li r30, 0 /* 8005635C 000532BC 3B 40 00 00 */ li r26, 0 /* 80056360 000532C0 3B A0 FF FF */ li r29, -1 /* 80056364 000532C4 90 03 00 C4 */ stw r0, 0xc4(r3) /* 80056368 000532C8 83 63 00 58 */ lwz r27, 0x58(r3) /* 8005636C 000532CC 48 00 00 8C */ b lbl_800563F8 lbl_80056370: /* 80056370 000532D0 FC 20 F8 90 */ fmr f1, f31 /* 80056374 000532D4 7F 63 DB 78 */ mr r3, r27 /* 80056378 000532D8 48 00 93 29 */ bl AliveUpdate__9CGameAreaFf /* 8005637C 000532DC 7F 63 DB 78 */ mr r3, r27 /* 80056380 000532E0 48 00 88 B5 */ bl DoesAreaNeedSkyNow__9CGameAreaCFv /* 80056384 000532E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80056388 000532E8 41 82 00 54 */ beq lbl_800563DC /* 8005638C 000532EC 80 7B 01 2C */ lwz r3, 0x12c(r27) /* 80056390 000532F0 80 63 10 D8 */ lwz r3, 0x10d8(r3) /* 80056394 000532F4 28 03 00 00 */ cmplwi r3, 0 /* 80056398 000532F8 41 82 00 18 */ beq lbl_800563B0 /* 8005639C 000532FC 80 63 00 4C */ lwz r3, 0x4c(r3) /* 800563A0 00053300 3C 03 00 01 */ addis r0, r3, 1 /* 800563A4 00053304 28 00 FF FF */ cmplwi r0, 0xffff /* 800563A8 00053308 41 82 00 08 */ beq lbl_800563B0 /* 800563AC 0005330C 7C 7D 1B 78 */ mr r29, r3 lbl_800563B0: /* 800563B0 00053310 88 1B 00 F0 */ lbz r0, 0xf0(r27) /* 800563B4 00053314 3B E0 00 01 */ li r31, 1 /* 800563B8 00053318 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800563BC 0005331C 41 82 00 10 */ beq lbl_800563CC /* 800563C0 00053320 80 7B 01 2C */ lwz r3, 0x12c(r27) /* 800563C4 00053324 80 03 10 DC */ lwz r0, 0x10dc(r3) /* 800563C8 00053328 48 00 00 08 */ b lbl_800563D0 lbl_800563CC: /* 800563CC 0005332C 38 00 00 00 */ li r0, 0 lbl_800563D0: /* 800563D0 00053330 2C 00 00 01 */ cmpwi r0, 1 /* 800563D4 00053334 40 82 00 08 */ bne lbl_800563DC /* 800563D8 00053338 3B C0 00 01 */ li r30, 1 lbl_800563DC: /* 800563DC 0005333C 7F 63 DB 78 */ mr r3, r27 /* 800563E0 00053340 48 00 88 11 */ bl DoesAreaNeedEnvFx__9CGameAreaCFv /* 800563E4 00053344 2C 03 00 00 */ cmpwi r3, 0 /* 800563E8 00053348 41 82 00 08 */ beq lbl_800563F0 /* 800563EC 0005334C 90 7C 00 C4 */ stw r3, 0xc4(r28) lbl_800563F0: /* 800563F0 00053350 83 7B 01 30 */ lwz r27, 0x130(r27) /* 800563F4 00053354 3B 5A 00 01 */ addi r26, r26, 1 lbl_800563F8: /* 800563F8 00053358 80 0D A2 1C */ lwz r0, lbl_805A8DDC@sda21(r13) /* 800563FC 0005335C 7C 00 D8 40 */ cmplw r0, r27 /* 80056400 00053360 40 82 FF 70 */ bne lbl_80056370 /* 80056404 00053364 2C 1A 00 00 */ cmpwi r26, 0 /* 80056408 00053368 41 82 04 D8 */ beq lbl_800568E0 /* 8005640C 0005336C 3C 1D 00 01 */ addis r0, r29, 1 /* 80056410 00053370 28 00 FF FF */ cmplwi r0, 0xffff /* 80056414 00053374 41 82 01 C0 */ beq lbl_800565D4 /* 80056418 00053378 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 8005641C 0005337C 41 82 01 B8 */ beq lbl_800565D4 /* 80056420 00053380 88 1C 00 70 */ lbz r0, 0x70(r28) /* 80056424 00053384 38 60 00 01 */ li r3, 1 /* 80056428 00053388 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a /* 8005642C 0005338C 3C 60 43 4D */ lis r3, 0x434D444C@ha /* 80056430 00053390 98 1C 00 70 */ stb r0, 0x70(r28) /* 80056434 00053394 38 03 44 4C */ addi r0, r3, 0x434D444C@l /* 80056438 00053398 38 61 00 08 */ addi r3, r1, 8 /* 8005643C 0005339C 38 A1 00 10 */ addi r5, r1, 0x10 /* 80056440 000533A0 88 9C 00 70 */ lbz r4, 0x70(r28) /* 80056444 000533A4 53 C4 26 F6 */ rlwimi r4, r30, 4, 0x1b, 0x1b /* 80056448 000533A8 98 9C 00 70 */ stb r4, 0x70(r28) /* 8005644C 000533AC 90 01 00 10 */ stw r0, 0x10(r1) /* 80056450 000533B0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80056454 000533B4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80056458 000533B8 81 84 00 00 */ lwz r12, 0(r4) /* 8005645C 000533BC 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80056460 000533C0 7D 89 03 A6 */ mtctr r12 /* 80056464 000533C4 4E 80 04 21 */ bctrl /* 80056468 000533C8 3B 41 00 54 */ addi r26, r1, 0x54 /* 8005646C 000533CC 38 81 00 08 */ addi r4, r1, 8 /* 80056470 000533D0 7F 43 D3 78 */ mr r3, r26 /* 80056474 000533D4 48 2E AA 35 */ bl __ct__6CTokenFRC6CToken /* 80056478 000533D8 7F 43 D3 78 */ mr r3, r26 /* 8005647C 000533DC 48 2E A9 91 */ bl GetObj__6CTokenFv /* 80056480 000533E0 80 03 00 04 */ lwz r0, 4(r3) /* 80056484 000533E4 90 01 00 5C */ stw r0, 0x5c(r1) /* 80056488 000533E8 88 1C 00 C0 */ lbz r0, 0xc0(r28) /* 8005648C 000533EC 28 00 00 00 */ cmplwi r0, 0 /* 80056490 000533F0 40 82 00 34 */ bne lbl_800564C4 /* 80056494 000533F4 37 BC 00 B4 */ addic. r29, r28, 0xb4 /* 80056498 000533F8 41 82 00 20 */ beq lbl_800564B8 /* 8005649C 000533FC 7F A3 EB 78 */ mr r3, r29 /* 800564A0 00053400 7F 44 D3 78 */ mr r4, r26 /* 800564A4 00053404 48 2E AA 05 */ bl __ct__6CTokenFRC6CToken /* 800564A8 00053408 80 01 00 5C */ lwz r0, 0x5c(r1) /* 800564AC 0005340C 7F A3 EB 78 */ mr r3, r29 /* 800564B0 00053410 90 1D 00 08 */ stw r0, 8(r29) /* 800564B4 00053414 48 2E A8 D1 */ bl Lock__6CTokenFv lbl_800564B8: /* 800564B8 00053418 38 00 00 01 */ li r0, 1 /* 800564BC 0005341C 98 1C 00 C0 */ stb r0, 0xc0(r28) /* 800564C0 00053420 48 00 00 1C */ b lbl_800564DC lbl_800564C4: /* 800564C4 00053424 3B BC 00 B4 */ addi r29, r28, 0xb4 /* 800564C8 00053428 7F 44 D3 78 */ mr r4, r26 /* 800564CC 0005342C 7F A3 EB 78 */ mr r3, r29 /* 800564D0 00053430 48 2E A7 F5 */ bl __as__6CTokenFRC6CToken /* 800564D4 00053434 80 01 00 5C */ lwz r0, 0x5c(r1) /* 800564D8 00053438 90 1D 00 08 */ stw r0, 8(r29) lbl_800564DC: /* 800564DC 0005343C 38 61 00 54 */ addi r3, r1, 0x54 /* 800564E0 00053440 38 80 00 00 */ li r4, 0 /* 800564E4 00053444 48 2E A9 5D */ bl __dt__6CTokenFv /* 800564E8 00053448 38 61 00 08 */ addi r3, r1, 8 /* 800564EC 0005344C 38 80 FF FF */ li r4, -1 /* 800564F0 00053450 48 2E A9 51 */ bl __dt__6CTokenFv /* 800564F4 00053454 3B BC 00 A4 */ addi r29, r28, 0xa4 /* 800564F8 00053458 38 81 00 44 */ addi r4, r1, 0x44 /* 800564FC 0005345C 38 00 00 00 */ li r0, 0 /* 80056500 00053460 7C 1D 20 40 */ cmplw r29, r4 /* 80056504 00053464 98 01 00 50 */ stb r0, 0x50(r1) /* 80056508 00053468 41 82 00 84 */ beq lbl_8005658C /* 8005650C 0005346C 28 00 00 00 */ cmplwi r0, 0 /* 80056510 00053470 41 82 00 50 */ beq lbl_80056560 /* 80056514 00053474 88 1C 00 B0 */ lbz r0, 0xb0(r28) /* 80056518 00053478 28 00 00 00 */ cmplwi r0, 0 /* 8005651C 0005347C 40 82 00 30 */ bne lbl_8005654C /* 80056520 00053480 37 BC 00 A4 */ addic. r29, r28, 0xa4 /* 80056524 00053484 41 82 00 1C */ beq lbl_80056540 /* 80056528 00053488 7F A3 EB 78 */ mr r3, r29 /* 8005652C 0005348C 48 2E A9 7D */ bl __ct__6CTokenFRC6CToken /* 80056530 00053490 80 01 00 4C */ lwz r0, 0x4c(r1) /* 80056534 00053494 7F A3 EB 78 */ mr r3, r29 /* 80056538 00053498 90 1D 00 08 */ stw r0, 8(r29) /* 8005653C 0005349C 48 2E A8 49 */ bl Lock__6CTokenFv lbl_80056540: /* 80056540 000534A0 38 00 00 01 */ li r0, 1 /* 80056544 000534A4 98 1C 00 B0 */ stb r0, 0xb0(r28) /* 80056548 000534A8 48 00 00 44 */ b lbl_8005658C lbl_8005654C: /* 8005654C 000534AC 7F A3 EB 78 */ mr r3, r29 /* 80056550 000534B0 48 2E A7 75 */ bl __as__6CTokenFRC6CToken /* 80056554 000534B4 80 01 00 4C */ lwz r0, 0x4c(r1) /* 80056558 000534B8 90 1D 00 08 */ stw r0, 8(r29) /* 8005655C 000534BC 48 00 00 30 */ b lbl_8005658C lbl_80056560: /* 80056560 000534C0 88 1C 00 B0 */ lbz r0, 0xb0(r28) /* 80056564 000534C4 28 00 00 00 */ cmplwi r0, 0 /* 80056568 000534C8 41 82 00 1C */ beq lbl_80056584 /* 8005656C 000534CC 34 7C 00 A4 */ addic. r3, r28, 0xa4 /* 80056570 000534D0 41 82 00 14 */ beq lbl_80056584 /* 80056574 000534D4 28 03 00 00 */ cmplwi r3, 0 /* 80056578 000534D8 41 82 00 0C */ beq lbl_80056584 /* 8005657C 000534DC 38 80 00 00 */ li r4, 0 /* 80056580 000534E0 48 2E A8 C1 */ bl __dt__6CTokenFv lbl_80056584: /* 80056584 000534E4 38 00 00 00 */ li r0, 0 /* 80056588 000534E8 98 1C 00 B0 */ stb r0, 0xb0(r28) lbl_8005658C: /* 8005658C 000534EC 88 01 00 50 */ lbz r0, 0x50(r1) /* 80056590 000534F0 28 00 00 00 */ cmplwi r0, 0 /* 80056594 000534F4 41 82 00 1C */ beq lbl_800565B0 /* 80056598 000534F8 34 61 00 44 */ addic. r3, r1, 0x44 /* 8005659C 000534FC 41 82 00 14 */ beq lbl_800565B0 /* 800565A0 00053500 28 03 00 00 */ cmplwi r3, 0 /* 800565A4 00053504 41 82 00 0C */ beq lbl_800565B0 /* 800565A8 00053508 38 80 00 00 */ li r4, 0 /* 800565AC 0005350C 48 2E A8 95 */ bl __dt__6CTokenFv lbl_800565B0: /* 800565B0 00053510 38 80 00 00 */ li r4, 0 /* 800565B4 00053514 98 81 00 50 */ stb r4, 0x50(r1) /* 800565B8 00053518 88 1C 00 A0 */ lbz r0, 0xa0(r28) /* 800565BC 0005351C 28 00 00 00 */ cmplwi r0, 0 /* 800565C0 00053520 41 82 03 20 */ beq lbl_800568E0 /* 800565C4 00053524 90 9C 00 9C */ stw r4, 0x9c(r28) /* 800565C8 00053528 38 7C 00 94 */ addi r3, r28, 0x94 /* 800565CC 0005352C 48 2E A7 75 */ bl Unlock__6CTokenFv /* 800565D0 00053530 48 00 03 10 */ b lbl_800568E0 lbl_800565D4: /* 800565D4 00053534 3B BC 00 B4 */ addi r29, r28, 0xb4 /* 800565D8 00053538 38 81 00 34 */ addi r4, r1, 0x34 /* 800565DC 0005353C 38 00 00 00 */ li r0, 0 /* 800565E0 00053540 7C 1D 20 40 */ cmplw r29, r4 /* 800565E4 00053544 98 01 00 40 */ stb r0, 0x40(r1) /* 800565E8 00053548 41 82 00 84 */ beq lbl_8005666C /* 800565EC 0005354C 28 00 00 00 */ cmplwi r0, 0 /* 800565F0 00053550 41 82 00 50 */ beq lbl_80056640 /* 800565F4 00053554 88 1C 00 C0 */ lbz r0, 0xc0(r28) /* 800565F8 00053558 28 00 00 00 */ cmplwi r0, 0 /* 800565FC 0005355C 40 82 00 30 */ bne lbl_8005662C /* 80056600 00053560 37 BC 00 B4 */ addic. r29, r28, 0xb4 /* 80056604 00053564 41 82 00 1C */ beq lbl_80056620 /* 80056608 00053568 7F A3 EB 78 */ mr r3, r29 /* 8005660C 0005356C 48 2E A8 9D */ bl __ct__6CTokenFRC6CToken /* 80056610 00053570 80 01 00 3C */ lwz r0, 0x3c(r1) /* 80056614 00053574 7F A3 EB 78 */ mr r3, r29 /* 80056618 00053578 90 1D 00 08 */ stw r0, 8(r29) /* 8005661C 0005357C 48 2E A7 69 */ bl Lock__6CTokenFv lbl_80056620: /* 80056620 00053580 38 00 00 01 */ li r0, 1 /* 80056624 00053584 98 1C 00 C0 */ stb r0, 0xc0(r28) /* 80056628 00053588 48 00 00 44 */ b lbl_8005666C lbl_8005662C: /* 8005662C 0005358C 7F A3 EB 78 */ mr r3, r29 /* 80056630 00053590 48 2E A6 95 */ bl __as__6CTokenFRC6CToken /* 80056634 00053594 80 01 00 3C */ lwz r0, 0x3c(r1) /* 80056638 00053598 90 1D 00 08 */ stw r0, 8(r29) /* 8005663C 0005359C 48 00 00 30 */ b lbl_8005666C lbl_80056640: /* 80056640 000535A0 88 1C 00 C0 */ lbz r0, 0xc0(r28) /* 80056644 000535A4 28 00 00 00 */ cmplwi r0, 0 /* 80056648 000535A8 41 82 00 1C */ beq lbl_80056664 /* 8005664C 000535AC 34 7C 00 B4 */ addic. r3, r28, 0xb4 /* 80056650 000535B0 41 82 00 14 */ beq lbl_80056664 /* 80056654 000535B4 28 03 00 00 */ cmplwi r3, 0 /* 80056658 000535B8 41 82 00 0C */ beq lbl_80056664 /* 8005665C 000535BC 38 80 00 00 */ li r4, 0 /* 80056660 000535C0 48 2E A7 E1 */ bl __dt__6CTokenFv lbl_80056664: /* 80056664 000535C4 38 00 00 00 */ li r0, 0 /* 80056668 000535C8 98 1C 00 C0 */ stb r0, 0xc0(r28) lbl_8005666C: /* 8005666C 000535CC 88 01 00 40 */ lbz r0, 0x40(r1) /* 80056670 000535D0 28 00 00 00 */ cmplwi r0, 0 /* 80056674 000535D4 41 82 00 1C */ beq lbl_80056690 /* 80056678 000535D8 34 61 00 34 */ addic. r3, r1, 0x34 /* 8005667C 000535DC 41 82 00 14 */ beq lbl_80056690 /* 80056680 000535E0 28 03 00 00 */ cmplwi r3, 0 /* 80056684 000535E4 41 82 00 0C */ beq lbl_80056690 /* 80056688 000535E8 38 80 00 00 */ li r4, 0 /* 8005668C 000535EC 48 2E A7 B5 */ bl __dt__6CTokenFv lbl_80056690: /* 80056690 000535F0 38 60 00 00 */ li r3, 0 /* 80056694 000535F4 98 61 00 40 */ stb r3, 0x40(r1) /* 80056698 000535F8 88 1C 00 A0 */ lbz r0, 0xa0(r28) /* 8005669C 000535FC 28 00 00 00 */ cmplwi r0, 0 /* 800566A0 00053600 40 82 00 20 */ bne lbl_800566C0 /* 800566A4 00053604 88 1C 00 70 */ lbz r0, 0x70(r28) /* 800566A8 00053608 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a /* 800566AC 0005360C 98 1C 00 70 */ stb r0, 0x70(r28) /* 800566B0 00053610 88 1C 00 70 */ lbz r0, 0x70(r28) /* 800566B4 00053614 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 800566B8 00053618 98 1C 00 70 */ stb r0, 0x70(r28) /* 800566BC 0005361C 48 00 02 24 */ b lbl_800568E0 lbl_800566C0: /* 800566C0 00053620 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 800566C4 00053624 40 82 00 F0 */ bne lbl_800567B4 /* 800566C8 00053628 3B BC 00 A4 */ addi r29, r28, 0xa4 /* 800566CC 0005362C 38 81 00 24 */ addi r4, r1, 0x24 /* 800566D0 00053630 7C 1D 20 40 */ cmplw r29, r4 /* 800566D4 00053634 98 61 00 30 */ stb r3, 0x30(r1) /* 800566D8 00053638 41 82 00 84 */ beq lbl_8005675C /* 800566DC 0005363C 28 03 00 00 */ cmplwi r3, 0 /* 800566E0 00053640 41 82 00 50 */ beq lbl_80056730 /* 800566E4 00053644 88 1C 00 B0 */ lbz r0, 0xb0(r28) /* 800566E8 00053648 28 00 00 00 */ cmplwi r0, 0 /* 800566EC 0005364C 40 82 00 30 */ bne lbl_8005671C /* 800566F0 00053650 37 BC 00 A4 */ addic. r29, r28, 0xa4 /* 800566F4 00053654 41 82 00 1C */ beq lbl_80056710 /* 800566F8 00053658 7F A3 EB 78 */ mr r3, r29 /* 800566FC 0005365C 48 2E A7 AD */ bl __ct__6CTokenFRC6CToken /* 80056700 00053660 80 01 00 2C */ lwz r0, 0x2c(r1) /* 80056704 00053664 7F A3 EB 78 */ mr r3, r29 /* 80056708 00053668 90 1D 00 08 */ stw r0, 8(r29) /* 8005670C 0005366C 48 2E A6 79 */ bl Lock__6CTokenFv lbl_80056710: /* 80056710 00053670 38 00 00 01 */ li r0, 1 /* 80056714 00053674 98 1C 00 B0 */ stb r0, 0xb0(r28) /* 80056718 00053678 48 00 00 44 */ b lbl_8005675C lbl_8005671C: /* 8005671C 0005367C 7F A3 EB 78 */ mr r3, r29 /* 80056720 00053680 48 2E A5 A5 */ bl __as__6CTokenFRC6CToken /* 80056724 00053684 80 01 00 2C */ lwz r0, 0x2c(r1) /* 80056728 00053688 90 1D 00 08 */ stw r0, 8(r29) /* 8005672C 0005368C 48 00 00 30 */ b lbl_8005675C lbl_80056730: /* 80056730 00053690 88 1C 00 B0 */ lbz r0, 0xb0(r28) /* 80056734 00053694 28 00 00 00 */ cmplwi r0, 0 /* 80056738 00053698 41 82 00 1C */ beq lbl_80056754 /* 8005673C 0005369C 34 7C 00 A4 */ addic. r3, r28, 0xa4 /* 80056740 000536A0 41 82 00 14 */ beq lbl_80056754 /* 80056744 000536A4 28 03 00 00 */ cmplwi r3, 0 /* 80056748 000536A8 41 82 00 0C */ beq lbl_80056754 /* 8005674C 000536AC 38 80 00 00 */ li r4, 0 /* 80056750 000536B0 48 2E A6 F1 */ bl __dt__6CTokenFv lbl_80056754: /* 80056754 000536B4 38 00 00 00 */ li r0, 0 /* 80056758 000536B8 98 1C 00 B0 */ stb r0, 0xb0(r28) lbl_8005675C: /* 8005675C 000536BC 88 01 00 30 */ lbz r0, 0x30(r1) /* 80056760 000536C0 28 00 00 00 */ cmplwi r0, 0 /* 80056764 000536C4 41 82 00 1C */ beq lbl_80056780 /* 80056768 000536C8 34 61 00 24 */ addic. r3, r1, 0x24 /* 8005676C 000536CC 41 82 00 14 */ beq lbl_80056780 /* 80056770 000536D0 28 03 00 00 */ cmplwi r3, 0 /* 80056774 000536D4 41 82 00 0C */ beq lbl_80056780 /* 80056778 000536D8 38 80 00 00 */ li r4, 0 /* 8005677C 000536DC 48 2E A6 C5 */ bl __dt__6CTokenFv lbl_80056780: /* 80056780 000536E0 38 00 00 00 */ li r0, 0 /* 80056784 000536E4 38 7C 00 94 */ addi r3, r28, 0x94 /* 80056788 000536E8 98 01 00 30 */ stb r0, 0x30(r1) /* 8005678C 000536EC 90 1C 00 9C */ stw r0, 0x9c(r28) /* 80056790 000536F0 48 2E A5 B1 */ bl Unlock__6CTokenFv /* 80056794 000536F4 88 1C 00 70 */ lbz r0, 0x70(r28) /* 80056798 000536F8 38 60 00 00 */ li r3, 0 /* 8005679C 000536FC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a /* 800567A0 00053700 98 1C 00 70 */ stb r0, 0x70(r28) /* 800567A4 00053704 88 1C 00 70 */ lbz r0, 0x70(r28) /* 800567A8 00053708 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 800567AC 0005370C 98 1C 00 70 */ stb r0, 0x70(r28) /* 800567B0 00053710 48 00 01 30 */ b lbl_800568E0 lbl_800567B4: /* 800567B4 00053714 88 1C 00 B0 */ lbz r0, 0xb0(r28) /* 800567B8 00053718 28 00 00 00 */ cmplwi r0, 0 /* 800567BC 0005371C 40 82 01 08 */ bne lbl_800568C4 /* 800567C0 00053720 38 7C 00 94 */ addi r3, r28, 0x94 /* 800567C4 00053724 48 2E A5 C1 */ bl Lock__6CTokenFv /* 800567C8 00053728 3B BC 00 94 */ addi r29, r28, 0x94 /* 800567CC 0005372C 80 1C 00 9C */ lwz r0, 0x9c(r28) /* 800567D0 00053730 28 00 00 00 */ cmplwi r0, 0 /* 800567D4 00053734 41 82 00 0C */ beq lbl_800567E0 /* 800567D8 00053738 38 60 00 01 */ li r3, 1 /* 800567DC 0005373C 48 00 00 3C */ b lbl_80056818 lbl_800567E0: /* 800567E0 00053740 88 1D 00 04 */ lbz r0, 4(r29) /* 800567E4 00053744 28 00 00 00 */ cmplwi r0, 0 /* 800567E8 00053748 41 82 00 2C */ beq lbl_80056814 /* 800567EC 0005374C 80 7D 00 00 */ lwz r3, 0(r29) /* 800567F0 00053750 80 03 00 10 */ lwz r0, 0x10(r3) /* 800567F4 00053754 28 00 00 00 */ cmplwi r0, 0 /* 800567F8 00053758 41 82 00 1C */ beq lbl_80056814 /* 800567FC 0005375C 7F A3 EB 78 */ mr r3, r29 /* 80056800 00053760 48 2E A6 0D */ bl GetObj__6CTokenFv /* 80056804 00053764 80 03 00 04 */ lwz r0, 4(r3) /* 80056808 00053768 38 60 00 01 */ li r3, 1 /* 8005680C 0005376C 90 1D 00 08 */ stw r0, 8(r29) /* 80056810 00053770 48 00 00 08 */ b lbl_80056818 lbl_80056814: /* 80056814 00053774 38 60 00 00 */ li r3, 0 lbl_80056818: /* 80056818 00053778 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8005681C 0005377C 41 82 00 A8 */ beq lbl_800568C4 /* 80056820 00053780 83 BC 00 9C */ lwz r29, 0x9c(r28) /* 80056824 00053784 38 80 00 00 */ li r4, 0 /* 80056828 00053788 7F A3 EB 78 */ mr r3, r29 /* 8005682C 0005378C 48 2F EE 09 */ bl Touch__6CModelCFi /* 80056830 00053790 7F A3 EB 78 */ mr r3, r29 /* 80056834 00053794 38 80 00 00 */ li r4, 0 /* 80056838 00053798 48 2F ED 71 */ bl IsLoaded__6CModelCFi /* 8005683C 0005379C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80056840 000537A0 41 82 00 84 */ beq lbl_800568C4 /* 80056844 000537A4 3B 41 00 18 */ addi r26, r1, 0x18 /* 80056848 000537A8 38 9C 00 94 */ addi r4, r28, 0x94 /* 8005684C 000537AC 7F 43 D3 78 */ mr r3, r26 /* 80056850 000537B0 48 2E A6 59 */ bl __ct__6CTokenFRC6CToken /* 80056854 000537B4 7F 43 D3 78 */ mr r3, r26 /* 80056858 000537B8 48 2E A5 B5 */ bl GetObj__6CTokenFv /* 8005685C 000537BC 80 03 00 04 */ lwz r0, 4(r3) /* 80056860 000537C0 90 01 00 20 */ stw r0, 0x20(r1) /* 80056864 000537C4 88 1C 00 B0 */ lbz r0, 0xb0(r28) /* 80056868 000537C8 28 00 00 00 */ cmplwi r0, 0 /* 8005686C 000537CC 40 82 00 34 */ bne lbl_800568A0 /* 80056870 000537D0 37 BC 00 A4 */ addic. r29, r28, 0xa4 /* 80056874 000537D4 41 82 00 20 */ beq lbl_80056894 /* 80056878 000537D8 7F A3 EB 78 */ mr r3, r29 /* 8005687C 000537DC 7F 44 D3 78 */ mr r4, r26 /* 80056880 000537E0 48 2E A6 29 */ bl __ct__6CTokenFRC6CToken /* 80056884 000537E4 80 01 00 20 */ lwz r0, 0x20(r1) /* 80056888 000537E8 7F A3 EB 78 */ mr r3, r29 /* 8005688C 000537EC 90 1D 00 08 */ stw r0, 8(r29) /* 80056890 000537F0 48 2E A4 F5 */ bl Lock__6CTokenFv lbl_80056894: /* 80056894 000537F4 38 00 00 01 */ li r0, 1 /* 80056898 000537F8 98 1C 00 B0 */ stb r0, 0xb0(r28) /* 8005689C 000537FC 48 00 00 1C */ b lbl_800568B8 lbl_800568A0: /* 800568A0 00053800 3B BC 00 A4 */ addi r29, r28, 0xa4 /* 800568A4 00053804 7F 44 D3 78 */ mr r4, r26 /* 800568A8 00053808 7F A3 EB 78 */ mr r3, r29 /* 800568AC 0005380C 48 2E A4 19 */ bl __as__6CTokenFRC6CToken /* 800568B0 00053810 80 01 00 20 */ lwz r0, 0x20(r1) /* 800568B4 00053814 90 1D 00 08 */ stw r0, 8(r29) lbl_800568B8: /* 800568B8 00053818 38 61 00 18 */ addi r3, r1, 0x18 /* 800568BC 0005381C 38 80 00 00 */ li r4, 0 /* 800568C0 00053820 48 2E A5 81 */ bl __dt__6CTokenFv lbl_800568C4: /* 800568C4 00053824 88 1C 00 70 */ lbz r0, 0x70(r28) /* 800568C8 00053828 38 60 00 01 */ li r3, 1 /* 800568CC 0005382C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a /* 800568D0 00053830 98 1C 00 70 */ stb r0, 0x70(r28) /* 800568D4 00053834 88 1C 00 70 */ lbz r0, 0x70(r28) /* 800568D8 00053838 53 C0 26 F6 */ rlwimi r0, r30, 4, 0x1b, 0x1b /* 800568DC 0005383C 98 1C 00 70 */ stb r0, 0x70(r28) lbl_800568E0: /* 800568E0 00053840 CB E1 00 78 */ lfd f31, 0x78(r1) /* 800568E4 00053844 BB 41 00 60 */ lmw r26, 0x60(r1) /* 800568E8 00053848 80 01 00 84 */ lwz r0, 0x84(r1) /* 800568EC 0005384C 7C 08 03 A6 */ mtlr r0 /* 800568F0 00053850 38 21 00 80 */ addi r1, r1, 0x80 /* 800568F4 00053854 4E 80 00 20 */ blr .global TouchSky__6CWorldCFv TouchSky__6CWorldCFv: /* 800568F8 00053858 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800568FC 0005385C 7C 08 02 A6 */ mflr r0 /* 80056900 00053860 90 01 00 14 */ stw r0, 0x14(r1) /* 80056904 00053864 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056908 00053868 7C 7F 1B 78 */ mr r31, r3 /* 8005690C 0005386C 88 03 00 B0 */ lbz r0, 0xb0(r3) /* 80056910 00053870 28 00 00 00 */ cmplwi r0, 0 /* 80056914 00053874 41 82 00 10 */ beq lbl_80056924 /* 80056918 00053878 80 7F 00 AC */ lwz r3, 0xac(r31) /* 8005691C 0005387C 38 80 00 00 */ li r4, 0 /* 80056920 00053880 48 2F ED 15 */ bl Touch__6CModelCFi lbl_80056924: /* 80056924 00053884 88 1F 00 C0 */ lbz r0, 0xc0(r31) /* 80056928 00053888 28 00 00 00 */ cmplwi r0, 0 /* 8005692C 0005388C 41 82 00 10 */ beq lbl_8005693C /* 80056930 00053890 80 7F 00 BC */ lwz r3, 0xbc(r31) /* 80056934 00053894 38 80 00 00 */ li r4, 0 /* 80056938 00053898 48 2F EC FD */ bl Touch__6CModelCFi lbl_8005693C: /* 8005693C 0005389C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056940 000538A0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056944 000538A4 7C 08 03 A6 */ mtlr r0 /* 80056948 000538A8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005694C 000538AC 4E 80 00 20 */ blr .global IGetAreaCount__11CDummyWorldFv IGetAreaCount__11CDummyWorldFv: /* 80056950 000538B0 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80056954 000538B4 4E 80 00 20 */ blr .global IGetDefaultAudioTrack__11CDummyWorldCFv IGetDefaultAudioTrack__11CDummyWorldCFv: /* 80056958 000538B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005695C 000538BC 7C 08 02 A6 */ mflr r0 /* 80056960 000538C0 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80056964 000538C4 90 01 00 14 */ stw r0, 0x14(r1) /* 80056968 000538C8 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 8005696C 000538CC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056970 000538D0 7C 7F 1B 78 */ mr r31, r3 /* 80056974 000538D4 4B FA E3 45 */ bl string_l__4rstlFPCc /* 80056978 000538D8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005697C 000538DC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056980 000538E0 7C 08 03 A6 */ mtlr r0 /* 80056984 000538E4 38 21 00 10 */ addi r1, r1, 0x10 /* 80056988 000538E8 4E 80 00 20 */ blr .global IGetAreaId__11CDummyWorldCF7TAreaId IGetAreaId__11CDummyWorldCF7TAreaId: /* 8005698C 000538EC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80056990 000538F0 7C 08 02 A6 */ mflr r0 /* 80056994 000538F4 90 01 00 34 */ stw r0, 0x34(r1) /* 80056998 000538F8 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 8005699C 000538FC 7C BD 2B 78 */ mr r29, r5 /* 800569A0 00053900 3C 1D 00 01 */ addis r0, r29, 1 /* 800569A4 00053904 7C 7B 1B 78 */ mr r27, r3 /* 800569A8 00053908 28 00 FF FF */ cmplwi r0, 0xffff /* 800569AC 0005390C 7C 9C 23 78 */ mr r28, r4 /* 800569B0 00053910 41 82 00 5C */ beq lbl_80056A0C /* 800569B4 00053914 83 FC 00 1C */ lwz r31, 0x1c(r28) /* 800569B8 00053918 3B C0 00 00 */ li r30, 0 /* 800569BC 0005391C 48 00 00 48 */ b lbl_80056A04 lbl_800569C0: /* 800569C0 00053920 93 C1 00 0C */ stw r30, 0xc(r1) /* 800569C4 00053924 7F 83 E3 78 */ mr r3, r28 /* 800569C8 00053928 38 81 00 0C */ addi r4, r1, 0xc /* 800569CC 0005392C 81 9C 00 00 */ lwz r12, 0(r28) /* 800569D0 00053930 93 C1 00 08 */ stw r30, 8(r1) /* 800569D4 00053934 81 8C 00 20 */ lwz r12, 0x20(r12) /* 800569D8 00053938 7D 89 03 A6 */ mtctr r12 /* 800569DC 0005393C 4E 80 04 21 */ bctrl /* 800569E0 00053940 81 83 00 00 */ lwz r12, 0(r3) /* 800569E4 00053944 81 8C 00 20 */ lwz r12, 0x20(r12) /* 800569E8 00053948 7D 89 03 A6 */ mtctr r12 /* 800569EC 0005394C 4E 80 04 21 */ bctrl /* 800569F0 00053950 7C 1D 18 40 */ cmplw r29, r3 /* 800569F4 00053954 40 82 00 0C */ bne lbl_80056A00 /* 800569F8 00053958 93 DB 00 00 */ stw r30, 0(r27) /* 800569FC 0005395C 48 00 00 18 */ b lbl_80056A14 lbl_80056A00: /* 80056A00 00053960 3B DE 00 01 */ addi r30, r30, 1 lbl_80056A04: /* 80056A04 00053964 7C 1E F8 00 */ cmpw r30, r31 /* 80056A08 00053968 41 80 FF B8 */ blt lbl_800569C0 lbl_80056A0C: /* 80056A0C 0005396C 38 00 FF FF */ li r0, -1 /* 80056A10 00053970 90 1B 00 00 */ stw r0, 0(r27) lbl_80056A14: /* 80056A14 00053974 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 80056A18 00053978 80 01 00 34 */ lwz r0, 0x34(r1) /* 80056A1C 0005397C 7C 08 03 A6 */ mtlr r0 /* 80056A20 00053980 38 21 00 30 */ addi r1, r1, 0x30 /* 80056A24 00053984 4E 80 00 20 */ blr .global IGetCurrentAreaId__11CDummyWorldCFv IGetCurrentAreaId__11CDummyWorldCFv: /* 80056A28 00053988 80 04 00 3C */ lwz r0, 0x3c(r4) /* 80056A2C 0005398C 90 03 00 00 */ stw r0, 0(r3) /* 80056A30 00053990 4E 80 00 20 */ blr .global IGetAreaAlways__11CDummyWorldCF7TAreaId IGetAreaAlways__11CDummyWorldCF7TAreaId: /* 80056A34 00053994 80 04 00 00 */ lwz r0, 0(r4) /* 80056A38 00053998 80 83 00 24 */ lwz r4, 0x24(r3) /* 80056A3C 0005399C 54 03 18 38 */ slwi r3, r0, 3 /* 80056A40 000539A0 38 03 00 04 */ addi r0, r3, 4 /* 80056A44 000539A4 7C 64 00 2E */ lwzx r3, r4, r0 /* 80056A48 000539A8 4E 80 00 20 */ blr .global IMapWorld__11CDummyWorldFv IMapWorld__11CDummyWorldFv: /* 80056A4C 000539AC 80 63 00 2C */ lwz r3, 0x2c(r3) /* 80056A50 000539B0 80 63 00 08 */ lwz r3, 8(r3) /* 80056A54 000539B4 4E 80 00 20 */ blr .global IGetMapWorld__11CDummyWorldCFv IGetMapWorld__11CDummyWorldCFv: /* 80056A58 000539B8 80 63 00 2C */ lwz r3, 0x2c(r3) /* 80056A5C 000539BC 80 63 00 08 */ lwz r3, 8(r3) /* 80056A60 000539C0 4E 80 00 20 */ blr .global IGetStringTableAssetId__11CDummyWorldCFv IGetStringTableAssetId__11CDummyWorldCFv: /* 80056A64 000539C4 80 63 00 10 */ lwz r3, 0x10(r3) /* 80056A68 000539C8 4E 80 00 20 */ blr .global IGetSaveWorldAssetId__11CDummyWorldCFv IGetSaveWorldAssetId__11CDummyWorldCFv: /* 80056A6C 000539CC 80 63 00 14 */ lwz r3, 0x14(r3) /* 80056A70 000539D0 4E 80 00 20 */ blr .global IGetWorldAssetId__11CDummyWorldCFv IGetWorldAssetId__11CDummyWorldCFv: /* 80056A74 000539D4 80 63 00 0C */ lwz r3, 0xc(r3) /* 80056A78 000539D8 4E 80 00 20 */ blr .global ICheckWorldComplete__11CDummyWorldFv ICheckWorldComplete__11CDummyWorldFv: /* 80056A7C 000539DC 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80056A80 000539E0 7C 08 02 A6 */ mflr r0 /* 80056A84 000539E4 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80056A88 000539E8 BF 61 00 8C */ stmw r27, 0x8c(r1) /* 80056A8C 000539EC 7C 7B 1B 78 */ mr r27, r3 /* 80056A90 000539F0 80 03 00 08 */ lwz r0, 8(r3) /* 80056A94 000539F4 2C 00 00 02 */ cmpwi r0, 2 /* 80056A98 000539F8 41 82 04 54 */ beq lbl_80056EEC /* 80056A9C 000539FC 40 80 00 14 */ bge lbl_80056AB0 /* 80056AA0 00053A00 2C 00 00 00 */ cmpwi r0, 0 /* 80056AA4 00053A04 41 82 00 18 */ beq lbl_80056ABC /* 80056AA8 00053A08 40 80 03 B8 */ bge lbl_80056E60 /* 80056AAC 00053A0C 48 00 04 6C */ b lbl_80056F18 lbl_80056AB0: /* 80056AB0 00053A10 2C 00 00 04 */ cmpwi r0, 4 /* 80056AB4 00053A14 40 80 04 64 */ bge lbl_80056F18 /* 80056AB8 00053A18 48 00 04 58 */ b lbl_80056F10 lbl_80056ABC: /* 80056ABC 00053A1C 80 7B 00 30 */ lwz r3, 0x30(r27) /* 80056AC0 00053A20 81 83 00 00 */ lwz r12, 0(r3) /* 80056AC4 00053A24 81 8C 00 10 */ lwz r12, 0x10(r12) /* 80056AC8 00053A28 7D 89 03 A6 */ mtctr r12 /* 80056ACC 00053A2C 4E 80 04 21 */ bctrl /* 80056AD0 00053A30 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80056AD4 00053A34 40 82 00 0C */ bne lbl_80056AE0 /* 80056AD8 00053A38 38 60 00 00 */ li r3, 0 /* 80056ADC 00053A3C 48 00 04 40 */ b lbl_80056F1C lbl_80056AE0: /* 80056AE0 00053A40 80 9B 00 34 */ lwz r4, 0x34(r27) /* 80056AE4 00053A44 38 61 00 58 */ addi r3, r1, 0x58 /* 80056AE8 00053A48 80 BB 00 38 */ lwz r5, 0x38(r27) /* 80056AEC 00053A4C 48 2E 86 E1 */ bl __ct__15CMemoryInStreamFPCvUl /* 80056AF0 00053A50 38 61 00 58 */ addi r3, r1, 0x58 /* 80056AF4 00053A54 48 2E 81 91 */ bl ReadLong__12CInputStreamFv /* 80056AF8 00053A58 38 61 00 58 */ addi r3, r1, 0x58 /* 80056AFC 00053A5C 48 2E 81 89 */ bl ReadLong__12CInputStreamFv /* 80056B00 00053A60 7C 7D 1B 78 */ mr r29, r3 /* 80056B04 00053A64 38 61 00 58 */ addi r3, r1, 0x58 /* 80056B08 00053A68 48 2E 81 7D */ bl ReadLong__12CInputStreamFv /* 80056B0C 00053A6C 28 1D 00 0F */ cmplwi r29, 0xf /* 80056B10 00053A70 90 7B 00 10 */ stw r3, 0x10(r27) /* 80056B14 00053A74 41 80 00 10 */ blt lbl_80056B24 /* 80056B18 00053A78 38 61 00 58 */ addi r3, r1, 0x58 /* 80056B1C 00053A7C 48 2E 81 69 */ bl ReadLong__12CInputStreamFv /* 80056B20 00053A80 90 7B 00 14 */ stw r3, 0x14(r27) lbl_80056B24: /* 80056B24 00053A84 28 1D 00 0C */ cmplwi r29, 0xc /* 80056B28 00053A88 41 80 00 0C */ blt lbl_80056B34 /* 80056B2C 00053A8C 38 61 00 58 */ addi r3, r1, 0x58 /* 80056B30 00053A90 48 2E 81 55 */ bl ReadLong__12CInputStreamFv lbl_80056B34: /* 80056B34 00053A94 28 1D 00 11 */ cmplwi r29, 0x11 /* 80056B38 00053A98 41 80 00 54 */ blt lbl_80056B8C /* 80056B3C 00053A9C 38 61 00 48 */ addi r3, r1, 0x48 /* 80056B40 00053AA0 38 81 00 58 */ addi r4, r1, 0x58 /* 80056B44 00053AA4 38 A1 00 0C */ addi r5, r1, 0xc /* 80056B48 00053AA8 48 00 06 91 */ bl "LoadRelays__FR12CInputStreamRQ24rstl44vector" /* 80056B4C 00053AAC 80 01 00 4C */ lwz r0, 0x4c(r1) /* 80056B50 00053AB0 80 61 00 54 */ lwz r3, 0x54(r1) /* 80056B54 00053AB4 1C 00 00 0C */ mulli r0, r0, 0xc /* 80056B58 00053AB8 90 61 00 14 */ stw r3, 0x14(r1) /* 80056B5C 00053ABC 7C 64 1B 78 */ mr r4, r3 /* 80056B60 00053AC0 7C 03 02 14 */ add r0, r3, r0 /* 80056B64 00053AC4 90 61 00 10 */ stw r3, 0x10(r1) /* 80056B68 00053AC8 90 01 00 1C */ stw r0, 0x1c(r1) /* 80056B6C 00053ACC 90 01 00 18 */ stw r0, 0x18(r1) /* 80056B70 00053AD0 48 00 00 08 */ b lbl_80056B78 lbl_80056B74: /* 80056B74 00053AD4 38 84 00 0C */ addi r4, r4, 0xc lbl_80056B78: /* 80056B78 00053AD8 7C 04 00 40 */ cmplw r4, r0 /* 80056B7C 00053ADC 40 82 FF F8 */ bne lbl_80056B74 /* 80056B80 00053AE0 28 03 00 00 */ cmplwi r3, 0 /* 80056B84 00053AE4 41 82 00 08 */ beq lbl_80056B8C /* 80056B88 00053AE8 48 2B ED A9 */ bl Free__7CMemoryFPCv lbl_80056B8C: /* 80056B8C 00053AEC 38 61 00 58 */ addi r3, r1, 0x58 /* 80056B90 00053AF0 48 2E 80 F5 */ bl ReadLong__12CInputStreamFv /* 80056B94 00053AF4 7C 7E 1B 78 */ mr r30, r3 /* 80056B98 00053AF8 38 61 00 58 */ addi r3, r1, 0x58 /* 80056B9C 00053AFC 48 2E 80 E9 */ bl ReadLong__12CInputStreamFv /* 80056BA0 00053B00 7F C4 F3 78 */ mr r4, r30 /* 80056BA4 00053B04 38 7B 00 18 */ addi r3, r27, 0x18 /* 80056BA8 00053B08 48 00 2D E9 */ bl sub_80059990 /* 80056BAC 00053B0C 3C 60 80 3D */ lis r3, lbl_803CCF70@ha /* 80056BB0 00053B10 3B 80 00 00 */ li r28, 0 /* 80056BB4 00053B14 3B E3 CF 70 */ addi r31, r3, lbl_803CCF70@l /* 80056BB8 00053B18 48 00 00 D4 */ b lbl_80056C8C lbl_80056BBC: /* 80056BBC 00053B1C 38 9F 00 01 */ addi r4, r31, 1 /* 80056BC0 00053B20 38 60 00 64 */ li r3, 0x64 /* 80056BC4 00053B24 38 A0 00 00 */ li r5, 0 /* 80056BC8 00053B28 48 2B EC A5 */ bl __nw__FUlPCcPCc /* 80056BCC 00053B2C 7C 64 1B 79 */ or. r4, r3, r3 /* 80056BD0 00053B30 41 82 00 18 */ beq lbl_80056BE8 /* 80056BD4 00053B34 7F 85 E3 78 */ mr r5, r28 /* 80056BD8 00053B38 7F A6 EB 78 */ mr r6, r29 /* 80056BDC 00053B3C 38 81 00 58 */ addi r4, r1, 0x58 /* 80056BE0 00053B40 48 00 77 F1 */ bl __ct__14CDummyGameAreaFR12CInputStreamii /* 80056BE4 00053B44 7C 64 1B 78 */ mr r4, r3 lbl_80056BE8: /* 80056BE8 00053B48 7C 64 00 D0 */ neg r3, r4 /* 80056BEC 00053B4C 80 1B 00 1C */ lwz r0, 0x1c(r27) /* 80056BF0 00053B50 80 BB 00 20 */ lwz r5, 0x20(r27) /* 80056BF4 00053B54 7C 63 23 78 */ or r3, r3, r4 /* 80056BF8 00053B58 54 63 0F FE */ srwi r3, r3, 0x1f /* 80056BFC 00053B5C 90 81 00 34 */ stw r4, 0x34(r1) /* 80056C00 00053B60 7C 00 28 00 */ cmpw r0, r5 /* 80056C04 00053B64 98 61 00 30 */ stb r3, 0x30(r1) /* 80056C08 00053B68 41 80 00 1C */ blt lbl_80056C24 /* 80056C0C 00053B6C 2C 05 00 00 */ cmpwi r5, 0 /* 80056C10 00053B70 38 7B 00 18 */ addi r3, r27, 0x18 /* 80056C14 00053B74 38 80 00 04 */ li r4, 4 /* 80056C18 00053B78 41 82 00 08 */ beq lbl_80056C20 /* 80056C1C 00053B7C 54 A4 08 3C */ slwi r4, r5, 1 lbl_80056C20: /* 80056C20 00053B80 48 00 2D 71 */ bl sub_80059990 lbl_80056C24: /* 80056C24 00053B84 80 1B 00 1C */ lwz r0, 0x1c(r27) /* 80056C28 00053B88 80 7B 00 24 */ lwz r3, 0x24(r27) /* 80056C2C 00053B8C 54 00 18 38 */ slwi r0, r0, 3 /* 80056C30 00053B90 7C A3 02 15 */ add. r5, r3, r0 /* 80056C34 00053B94 41 82 00 1C */ beq lbl_80056C50 /* 80056C38 00053B98 88 81 00 30 */ lbz r4, 0x30(r1) /* 80056C3C 00053B9C 38 00 00 00 */ li r0, 0 /* 80056C40 00053BA0 80 61 00 34 */ lwz r3, 0x34(r1) /* 80056C44 00053BA4 98 85 00 00 */ stb r4, 0(r5) /* 80056C48 00053BA8 90 65 00 04 */ stw r3, 4(r5) /* 80056C4C 00053BAC 98 01 00 30 */ stb r0, 0x30(r1) lbl_80056C50: /* 80056C50 00053BB0 80 7B 00 1C */ lwz r3, 0x1c(r27) /* 80056C54 00053BB4 88 01 00 30 */ lbz r0, 0x30(r1) /* 80056C58 00053BB8 38 63 00 01 */ addi r3, r3, 1 /* 80056C5C 00053BBC 28 00 00 00 */ cmplwi r0, 0 /* 80056C60 00053BC0 90 7B 00 1C */ stw r3, 0x1c(r27) /* 80056C64 00053BC4 41 82 00 24 */ beq lbl_80056C88 /* 80056C68 00053BC8 80 61 00 34 */ lwz r3, 0x34(r1) /* 80056C6C 00053BCC 28 03 00 00 */ cmplwi r3, 0 /* 80056C70 00053BD0 41 82 00 18 */ beq lbl_80056C88 /* 80056C74 00053BD4 81 83 00 00 */ lwz r12, 0(r3) /* 80056C78 00053BD8 38 80 00 01 */ li r4, 1 /* 80056C7C 00053BDC 81 8C 00 08 */ lwz r12, 8(r12) /* 80056C80 00053BE0 7D 89 03 A6 */ mtctr r12 /* 80056C84 00053BE4 4E 80 04 21 */ bctrl lbl_80056C88: /* 80056C88 00053BE8 3B 9C 00 01 */ addi r28, r28, 1 lbl_80056C8C: /* 80056C8C 00053BEC 7C 1C F0 00 */ cmpw r28, r30 /* 80056C90 00053BF0 41 80 FF 2C */ blt lbl_80056BBC /* 80056C94 00053BF4 38 61 00 58 */ addi r3, r1, 0x58 /* 80056C98 00053BF8 48 2E 7F ED */ bl ReadLong__12CInputStreamFv /* 80056C9C 00053BFC 90 7B 00 28 */ stw r3, 0x28(r27) /* 80056CA0 00053C00 88 1B 00 04 */ lbz r0, 4(r27) /* 80056CA4 00053C04 28 00 00 00 */ cmplwi r0, 0 /* 80056CA8 00053C08 41 82 00 B4 */ beq lbl_80056D5C /* 80056CAC 00053C0C 3C 60 80 3D */ lis r3, lbl_803CCF70@ha /* 80056CB0 00053C10 3B E0 00 00 */ li r31, 0 /* 80056CB4 00053C14 38 83 CF 70 */ addi r4, r3, lbl_803CCF70@l /* 80056CB8 00053C18 38 60 00 0C */ li r3, 0xc /* 80056CBC 00053C1C 38 84 00 01 */ addi r4, r4, 1 /* 80056CC0 00053C20 38 A0 00 00 */ li r5, 0 /* 80056CC4 00053C24 48 2B EB A9 */ bl __nw__FUlPCcPCc /* 80056CC8 00053C28 7C 7C 1B 79 */ or. r28, r3, r3 /* 80056CCC 00053C2C 41 82 00 4C */ beq lbl_80056D18 /* 80056CD0 00053C30 80 DB 00 28 */ lwz r6, 0x28(r27) /* 80056CD4 00053C34 3C 60 4D 41 */ lis r3, 0x4D415057@ha /* 80056CD8 00053C38 38 03 50 57 */ addi r0, r3, 0x4D415057@l /* 80056CDC 00053C3C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80056CE0 00053C40 90 01 00 28 */ stw r0, 0x28(r1) /* 80056CE4 00053C44 38 61 00 20 */ addi r3, r1, 0x20 /* 80056CE8 00053C48 38 A1 00 28 */ addi r5, r1, 0x28 /* 80056CEC 00053C4C 90 C1 00 2C */ stw r6, 0x2c(r1) /* 80056CF0 00053C50 81 84 00 00 */ lwz r12, 0(r4) /* 80056CF4 00053C54 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80056CF8 00053C58 7D 89 03 A6 */ mtctr r12 /* 80056CFC 00053C5C 4E 80 04 21 */ bctrl /* 80056D00 00053C60 7F 83 E3 78 */ mr r3, r28 /* 80056D04 00053C64 38 81 00 20 */ addi r4, r1, 0x20 /* 80056D08 00053C68 3B E0 00 01 */ li r31, 1 /* 80056D0C 00053C6C 48 2E A1 9D */ bl __ct__6CTokenFRC6CToken /* 80056D10 00053C70 38 00 00 00 */ li r0, 0 /* 80056D14 00053C74 90 1C 00 08 */ stw r0, 8(r28) lbl_80056D18: /* 80056D18 00053C78 83 DB 00 2C */ lwz r30, 0x2c(r27) /* 80056D1C 00053C7C 28 1E 00 00 */ cmplwi r30, 0 /* 80056D20 00053C80 41 82 00 1C */ beq lbl_80056D3C /* 80056D24 00053C84 41 82 00 10 */ beq lbl_80056D34 /* 80056D28 00053C88 7F C3 F3 78 */ mr r3, r30 /* 80056D2C 00053C8C 38 80 00 00 */ li r4, 0 /* 80056D30 00053C90 48 2E A1 11 */ bl __dt__6CTokenFv lbl_80056D34: /* 80056D34 00053C94 7F C3 F3 78 */ mr r3, r30 /* 80056D38 00053C98 48 2B EB F9 */ bl Free__7CMemoryFPCv lbl_80056D3C: /* 80056D3C 00053C9C 7F E0 07 75 */ extsb. r0, r31 /* 80056D40 00053CA0 93 9B 00 2C */ stw r28, 0x2c(r27) /* 80056D44 00053CA4 41 82 00 10 */ beq lbl_80056D54 /* 80056D48 00053CA8 38 61 00 20 */ addi r3, r1, 0x20 /* 80056D4C 00053CAC 38 80 FF FF */ li r4, -1 /* 80056D50 00053CB0 48 2E A0 F1 */ bl __dt__6CTokenFv lbl_80056D54: /* 80056D54 00053CB4 80 7B 00 2C */ lwz r3, 0x2c(r27) /* 80056D58 00053CB8 48 2E A0 2D */ bl Lock__6CTokenFv lbl_80056D5C: /* 80056D5C 00053CBC 38 61 00 58 */ addi r3, r1, 0x58 /* 80056D60 00053CC0 48 2E 7F AD */ bl ReadChar__12CInputStreamFv /* 80056D64 00053CC4 38 61 00 58 */ addi r3, r1, 0x58 /* 80056D68 00053CC8 48 2E 7F 1D */ bl ReadLong__12CInputStreamFv /* 80056D6C 00053CCC 28 1D 00 0A */ cmplwi r29, 0xa /* 80056D70 00053CD0 40 81 00 34 */ ble lbl_80056DA4 /* 80056D74 00053CD4 38 61 00 58 */ addi r3, r1, 0x58 /* 80056D78 00053CD8 48 2E 7F 0D */ bl ReadLong__12CInputStreamFv /* 80056D7C 00053CDC 7C 7C 1B 78 */ mr r28, r3 /* 80056D80 00053CE0 3B C0 00 00 */ li r30, 0 /* 80056D84 00053CE4 48 00 00 18 */ b lbl_80056D9C lbl_80056D88: /* 80056D88 00053CE8 38 61 00 58 */ addi r3, r1, 0x58 /* 80056D8C 00053CEC 48 2E 7E F9 */ bl ReadLong__12CInputStreamFv /* 80056D90 00053CF0 38 61 00 58 */ addi r3, r1, 0x58 /* 80056D94 00053CF4 48 2E 7E F1 */ bl ReadLong__12CInputStreamFv /* 80056D98 00053CF8 3B DE 00 01 */ addi r30, r30, 1 lbl_80056D9C: /* 80056D9C 00053CFC 7C 1E E0 00 */ cmpw r30, r28 /* 80056DA0 00053D00 41 80 FF E8 */ blt lbl_80056D88 lbl_80056DA4: /* 80056DA4 00053D04 28 1D 00 0C */ cmplwi r29, 0xc /* 80056DA8 00053D08 40 81 00 1C */ ble lbl_80056DC4 /* 80056DAC 00053D0C 38 61 00 38 */ addi r3, r1, 0x38 /* 80056DB0 00053D10 38 81 00 58 */ addi r4, r1, 0x58 /* 80056DB4 00053D14 38 A1 00 08 */ addi r5, r1, 8 /* 80056DB8 00053D18 48 2E 75 41 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" /* 80056DBC 00053D1C 38 61 00 38 */ addi r3, r1, 0x38 /* 80056DC0 00053D20 48 2E 6D 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80056DC4: /* 80056DC4 00053D24 80 BB 00 0C */ lwz r5, 0xc(r27) /* 80056DC8 00053D28 7F A4 EB 78 */ mr r4, r29 /* 80056DCC 00053D2C 38 61 00 58 */ addi r3, r1, 0x58 /* 80056DD0 00053D30 48 00 24 4D */ bl ReadWorldLayers__12CWorldLayersFR12CInputStream /* 80056DD4 00053D34 80 7B 00 30 */ lwz r3, 0x30(r27) /* 80056DD8 00053D38 28 03 00 00 */ cmplwi r3, 0 /* 80056DDC 00053D3C 41 82 00 18 */ beq lbl_80056DF4 /* 80056DE0 00053D40 81 83 00 00 */ lwz r12, 0(r3) /* 80056DE4 00053D44 38 80 00 01 */ li r4, 1 /* 80056DE8 00053D48 81 8C 00 08 */ lwz r12, 8(r12) /* 80056DEC 00053D4C 7D 89 03 A6 */ mtctr r12 /* 80056DF0 00053D50 4E 80 04 21 */ bctrl lbl_80056DF4: /* 80056DF4 00053D54 38 00 00 00 */ li r0, 0 /* 80056DF8 00053D58 90 1B 00 30 */ stw r0, 0x30(r27) /* 80056DFC 00053D5C 80 7B 00 34 */ lwz r3, 0x34(r27) /* 80056E00 00053D60 48 2B EB 31 */ bl Free__7CMemoryFPCv /* 80056E04 00053D64 38 00 00 00 */ li r0, 0 /* 80056E08 00053D68 90 1B 00 34 */ stw r0, 0x34(r27) /* 80056E0C 00053D6C 90 1B 00 38 */ stw r0, 0x38(r27) /* 80056E10 00053D70 88 1B 00 04 */ lbz r0, 4(r27) /* 80056E14 00053D74 28 00 00 00 */ cmplwi r0, 0 /* 80056E18 00053D78 40 82 00 28 */ bne lbl_80056E40 /* 80056E1C 00053D7C 38 00 00 03 */ li r0, 3 /* 80056E20 00053D80 3C 60 80 3F */ lis r3, __vt__15CMemoryInStream@ha /* 80056E24 00053D84 90 1B 00 08 */ stw r0, 8(r27) /* 80056E28 00053D88 38 03 E3 98 */ addi r0, r3, __vt__15CMemoryInStream@l /* 80056E2C 00053D8C 38 61 00 58 */ addi r3, r1, 0x58 /* 80056E30 00053D90 38 80 00 00 */ li r4, 0 /* 80056E34 00053D94 90 01 00 58 */ stw r0, 0x58(r1) /* 80056E38 00053D98 48 2E 82 75 */ bl __dt__12CInputStreamFv /* 80056E3C 00053D9C 48 00 00 DC */ b lbl_80056F18 lbl_80056E40: /* 80056E40 00053DA0 38 00 00 01 */ li r0, 1 /* 80056E44 00053DA4 3C 60 80 3F */ lis r3, __vt__15CMemoryInStream@ha /* 80056E48 00053DA8 90 1B 00 08 */ stw r0, 8(r27) /* 80056E4C 00053DAC 38 03 E3 98 */ addi r0, r3, __vt__15CMemoryInStream@l /* 80056E50 00053DB0 38 61 00 58 */ addi r3, r1, 0x58 /* 80056E54 00053DB4 38 80 00 00 */ li r4, 0 /* 80056E58 00053DB8 90 01 00 58 */ stw r0, 0x58(r1) /* 80056E5C 00053DBC 48 2E 82 51 */ bl __dt__12CInputStreamFv lbl_80056E60: /* 80056E60 00053DC0 83 9B 00 2C */ lwz r28, 0x2c(r27) /* 80056E64 00053DC4 80 1C 00 08 */ lwz r0, 8(r28) /* 80056E68 00053DC8 28 00 00 00 */ cmplwi r0, 0 /* 80056E6C 00053DCC 41 82 00 0C */ beq lbl_80056E78 /* 80056E70 00053DD0 38 60 00 01 */ li r3, 1 /* 80056E74 00053DD4 48 00 00 3C */ b lbl_80056EB0 lbl_80056E78: /* 80056E78 00053DD8 88 1C 00 04 */ lbz r0, 4(r28) /* 80056E7C 00053DDC 28 00 00 00 */ cmplwi r0, 0 /* 80056E80 00053DE0 41 82 00 2C */ beq lbl_80056EAC /* 80056E84 00053DE4 80 7C 00 00 */ lwz r3, 0(r28) /* 80056E88 00053DE8 80 03 00 10 */ lwz r0, 0x10(r3) /* 80056E8C 00053DEC 28 00 00 00 */ cmplwi r0, 0 /* 80056E90 00053DF0 41 82 00 1C */ beq lbl_80056EAC /* 80056E94 00053DF4 7F 83 E3 78 */ mr r3, r28 /* 80056E98 00053DF8 48 2E 9F 75 */ bl GetObj__6CTokenFv /* 80056E9C 00053DFC 80 03 00 04 */ lwz r0, 4(r3) /* 80056EA0 00053E00 38 60 00 01 */ li r3, 1 /* 80056EA4 00053E04 90 1C 00 08 */ stw r0, 8(r28) /* 80056EA8 00053E08 48 00 00 08 */ b lbl_80056EB0 lbl_80056EAC: /* 80056EAC 00053E0C 38 60 00 00 */ li r3, 0 lbl_80056EB0: /* 80056EB0 00053E10 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80056EB4 00053E14 40 82 00 0C */ bne lbl_80056EC0 /* 80056EB8 00053E18 38 60 00 00 */ li r3, 0 /* 80056EBC 00053E1C 48 00 00 60 */ b lbl_80056F1C lbl_80056EC0: /* 80056EC0 00053E20 7F 63 DB 78 */ mr r3, r27 /* 80056EC4 00053E24 81 9B 00 00 */ lwz r12, 0(r27) /* 80056EC8 00053E28 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 80056ECC 00053E2C 7D 89 03 A6 */ mtctr r12 /* 80056ED0 00053E30 4E 80 04 21 */ bctrl /* 80056ED4 00053E34 7F 64 DB 78 */ mr r4, r27 /* 80056ED8 00053E38 38 A0 00 00 */ li r5, 0 /* 80056EDC 00053E3C 38 C0 27 0F */ li r6, 0x270f /* 80056EE0 00053E40 48 04 A3 29 */ bl SetWhichMapAreasLoaded__9CMapWorldFRC6IWorldii /* 80056EE4 00053E44 38 00 00 02 */ li r0, 2 /* 80056EE8 00053E48 90 1B 00 08 */ stw r0, 8(r27) lbl_80056EEC: /* 80056EEC 00053E4C 80 7B 00 2C */ lwz r3, 0x2c(r27) /* 80056EF0 00053E50 80 63 00 08 */ lwz r3, 8(r3) /* 80056EF4 00053E54 48 04 A2 8D */ bl IsMapAreasStreaming__9CMapWorldCFv /* 80056EF8 00053E58 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80056EFC 00053E5C 41 82 00 0C */ beq lbl_80056F08 /* 80056F00 00053E60 38 60 00 00 */ li r3, 0 /* 80056F04 00053E64 48 00 00 18 */ b lbl_80056F1C lbl_80056F08: /* 80056F08 00053E68 38 00 00 03 */ li r0, 3 /* 80056F0C 00053E6C 90 1B 00 08 */ stw r0, 8(r27) lbl_80056F10: /* 80056F10 00053E70 38 60 00 01 */ li r3, 1 /* 80056F14 00053E74 48 00 00 08 */ b lbl_80056F1C lbl_80056F18: /* 80056F18 00053E78 38 60 00 00 */ li r3, 0 lbl_80056F1C: /* 80056F1C 00053E7C BB 61 00 8C */ lmw r27, 0x8c(r1) /* 80056F20 00053E80 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80056F24 00053E84 7C 08 03 A6 */ mtlr r0 /* 80056F28 00053E88 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80056F2C 00053E8C 4E 80 00 20 */ blr .global __dt__14CDummyGameAreaFv __dt__14CDummyGameAreaFv: /* 80056F30 00053E90 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80056F34 00053E94 7C 08 02 A6 */ mflr r0 /* 80056F38 00053E98 90 01 00 24 */ stw r0, 0x24(r1) /* 80056F3C 00053E9C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80056F40 00053EA0 7C 9F 23 78 */ mr r31, r4 /* 80056F44 00053EA4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80056F48 00053EA8 7C 7E 1B 79 */ or. r30, r3, r3 /* 80056F4C 00053EAC 41 82 00 80 */ beq lbl_80056FCC /* 80056F50 00053EB0 3C 80 80 3E */ lis r4, lbl_803DA208@ha /* 80056F54 00053EB4 38 7E 00 54 */ addi r3, r30, 0x54 /* 80056F58 00053EB8 38 04 A2 08 */ addi r0, r4, lbl_803DA208@l /* 80056F5C 00053EBC 38 80 FF FF */ li r4, -1 /* 80056F60 00053EC0 90 1E 00 00 */ stw r0, 0(r30) /* 80056F64 00053EC4 48 00 00 85 */ bl sub_80056fe8 /* 80056F68 00053EC8 34 1E 00 44 */ addic. r0, r30, 0x44 /* 80056F6C 00053ECC 41 82 00 44 */ beq lbl_80056FB0 /* 80056F70 00053ED0 80 1E 00 48 */ lwz r0, 0x48(r30) /* 80056F74 00053ED4 80 7E 00 50 */ lwz r3, 0x50(r30) /* 80056F78 00053ED8 54 00 08 3C */ slwi r0, r0, 1 /* 80056F7C 00053EDC 7C 03 02 14 */ add r0, r3, r0 /* 80056F80 00053EE0 90 61 00 0C */ stw r3, 0xc(r1) /* 80056F84 00053EE4 7C 64 1B 78 */ mr r4, r3 /* 80056F88 00053EE8 90 01 00 14 */ stw r0, 0x14(r1) /* 80056F8C 00053EEC 90 01 00 10 */ stw r0, 0x10(r1) /* 80056F90 00053EF0 90 61 00 08 */ stw r3, 8(r1) /* 80056F94 00053EF4 48 00 00 08 */ b lbl_80056F9C lbl_80056F98: /* 80056F98 00053EF8 38 84 00 02 */ addi r4, r4, 2 lbl_80056F9C: /* 80056F9C 00053EFC 7C 04 00 40 */ cmplw r4, r0 /* 80056FA0 00053F00 40 82 FF F8 */ bne lbl_80056F98 /* 80056FA4 00053F04 28 03 00 00 */ cmplwi r3, 0 /* 80056FA8 00053F08 41 82 00 08 */ beq lbl_80056FB0 /* 80056FAC 00053F0C 48 2B E9 85 */ bl Free__7CMemoryFPCv lbl_80056FB0: /* 80056FB0 00053F10 7F C3 F3 78 */ mr r3, r30 /* 80056FB4 00053F14 38 80 00 00 */ li r4, 0 /* 80056FB8 00053F18 48 00 CB 25 */ bl __dt__9IGameAreaFv /* 80056FBC 00053F1C 7F E0 07 35 */ extsh. r0, r31 /* 80056FC0 00053F20 40 81 00 0C */ ble lbl_80056FCC /* 80056FC4 00053F24 7F C3 F3 78 */ mr r3, r30 /* 80056FC8 00053F28 48 2B E9 69 */ bl Free__7CMemoryFPCv lbl_80056FCC: /* 80056FCC 00053F2C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80056FD0 00053F30 7F C3 F3 78 */ mr r3, r30 /* 80056FD4 00053F34 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80056FD8 00053F38 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80056FDC 00053F3C 7C 08 03 A6 */ mtlr r0 /* 80056FE0 00053F40 38 21 00 20 */ addi r1, r1, 0x20 /* 80056FE4 00053F44 4E 80 00 20 */ blr .global sub_80056fe8 sub_80056fe8: /* 80056FE8 00053F48 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80056FEC 00053F4C 7C 08 02 A6 */ mflr r0 /* 80056FF0 00053F50 90 01 00 24 */ stw r0, 0x24(r1) /* 80056FF4 00053F54 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80056FF8 00053F58 7C 9F 23 78 */ mr r31, r4 /* 80056FFC 00053F5C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80057000 00053F60 7C 7E 1B 79 */ or. r30, r3, r3 /* 80057004 00053F64 41 82 00 54 */ beq lbl_80057058 /* 80057008 00053F68 80 1E 00 04 */ lwz r0, 4(r30) /* 8005700C 00053F6C 38 61 00 14 */ addi r3, r1, 0x14 /* 80057010 00053F70 80 BE 00 0C */ lwz r5, 0xc(r30) /* 80057014 00053F74 38 81 00 0C */ addi r4, r1, 0xc /* 80057018 00053F78 1C 00 00 4C */ mulli r0, r0, 0x4c /* 8005701C 00053F7C 7C A5 02 14 */ add r5, r5, r0 /* 80057020 00053F80 90 A1 00 0C */ stw r5, 0xc(r1) /* 80057024 00053F84 80 1E 00 0C */ lwz r0, 0xc(r30) /* 80057028 00053F88 90 A1 00 08 */ stw r5, 8(r1) /* 8005702C 00053F8C 90 01 00 10 */ stw r0, 0x10(r1) /* 80057030 00053F90 90 01 00 14 */ stw r0, 0x14(r1) /* 80057034 00053F94 48 00 00 41 */ bl sub_80057074 /* 80057038 00053F98 80 7E 00 0C */ lwz r3, 0xc(r30) /* 8005703C 00053F9C 28 03 00 00 */ cmplwi r3, 0 /* 80057040 00053FA0 41 82 00 08 */ beq lbl_80057048 /* 80057044 00053FA4 48 2B E8 ED */ bl Free__7CMemoryFPCv lbl_80057048: /* 80057048 00053FA8 7F E0 07 35 */ extsh. r0, r31 /* 8005704C 00053FAC 40 81 00 0C */ ble lbl_80057058 /* 80057050 00053FB0 7F C3 F3 78 */ mr r3, r30 /* 80057054 00053FB4 48 2B E8 DD */ bl Free__7CMemoryFPCv lbl_80057058: /* 80057058 00053FB8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005705C 00053FBC 7F C3 F3 78 */ mr r3, r30 /* 80057060 00053FC0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80057064 00053FC4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80057068 00053FC8 7C 08 03 A6 */ mtlr r0 /* 8005706C 00053FCC 38 21 00 20 */ addi r1, r1, 0x20 /* 80057070 00053FD0 4E 80 00 20 */ blr .global sub_80057074 sub_80057074: /* 80057074 00053FD4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80057078 00053FD8 7C 08 02 A6 */ mflr r0 /* 8005707C 00053FDC 90 01 00 14 */ stw r0, 0x14(r1) /* 80057080 00053FE0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80057084 00053FE4 93 C1 00 08 */ stw r30, 8(r1) /* 80057088 00053FE8 7C 9E 23 78 */ mr r30, r4 /* 8005708C 00053FEC 83 E3 00 00 */ lwz r31, 0(r3) /* 80057090 00053FF0 48 00 00 10 */ b lbl_800570A0 lbl_80057094: /* 80057094 00053FF4 7F E3 FB 78 */ mr r3, r31 /* 80057098 00053FF8 48 00 00 2D */ bl sub_800570c4 /* 8005709C 00053FFC 3B FF 00 4C */ addi r31, r31, 0x4c lbl_800570A0: /* 800570A0 00054000 80 1E 00 00 */ lwz r0, 0(r30) /* 800570A4 00054004 7C 1F 00 40 */ cmplw r31, r0 /* 800570A8 00054008 40 82 FF EC */ bne lbl_80057094 /* 800570AC 0005400C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800570B0 00054010 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800570B4 00054014 83 C1 00 08 */ lwz r30, 8(r1) /* 800570B8 00054018 7C 08 03 A6 */ mtlr r0 /* 800570BC 0005401C 38 21 00 10 */ addi r1, r1, 0x10 /* 800570C0 00054020 4E 80 00 20 */ blr .global sub_800570c4 sub_800570c4: /* 800570C4 00054024 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800570C8 00054028 7C 08 02 A6 */ mflr r0 /* 800570CC 0005402C 38 80 FF FF */ li r4, -1 /* 800570D0 00054030 90 01 00 14 */ stw r0, 0x14(r1) /* 800570D4 00054034 48 00 00 15 */ bl sub_800570e8 /* 800570D8 00054038 80 01 00 14 */ lwz r0, 0x14(r1) /* 800570DC 0005403C 7C 08 03 A6 */ mtlr r0 /* 800570E0 00054040 38 21 00 10 */ addi r1, r1, 0x10 /* 800570E4 00054044 4E 80 00 20 */ blr .global sub_800570e8 sub_800570e8: /* 800570E8 00054048 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800570EC 0005404C 7C 08 02 A6 */ mflr r0 /* 800570F0 00054050 90 01 00 24 */ stw r0, 0x24(r1) /* 800570F4 00054054 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800570F8 00054058 7C 9F 23 78 */ mr r31, r4 /* 800570FC 0005405C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80057100 00054060 7C 7E 1B 79 */ or. r30, r3, r3 /* 80057104 00054064 41 82 00 B8 */ beq lbl_800571BC /* 80057108 00054068 34 1E 00 14 */ addic. r0, r30, 0x14 /* 8005710C 0005406C 41 82 00 58 */ beq lbl_80057164 /* 80057110 00054070 80 BE 00 14 */ lwz r5, 0x14(r30) /* 80057114 00054074 38 60 00 00 */ li r3, 0 /* 80057118 00054078 2C 05 00 00 */ cmpwi r5, 0 /* 8005711C 0005407C 40 81 00 40 */ ble lbl_8005715C /* 80057120 00054080 2C 05 00 08 */ cmpwi r5, 8 /* 80057124 00054084 38 85 FF F8 */ addi r4, r5, -8 /* 80057128 00054088 40 81 00 20 */ ble lbl_80057148 /* 8005712C 0005408C 38 04 00 07 */ addi r0, r4, 7 /* 80057130 00054090 54 00 E8 FE */ srwi r0, r0, 3 /* 80057134 00054094 7C 09 03 A6 */ mtctr r0 /* 80057138 00054098 2C 04 00 00 */ cmpwi r4, 0 /* 8005713C 0005409C 40 81 00 0C */ ble lbl_80057148 lbl_80057140: /* 80057140 000540A0 38 63 00 08 */ addi r3, r3, 8 /* 80057144 000540A4 42 00 FF FC */ bdnz lbl_80057140 lbl_80057148: /* 80057148 000540A8 7C 03 28 50 */ subf r0, r3, r5 /* 8005714C 000540AC 7C 09 03 A6 */ mtctr r0 /* 80057150 000540B0 7C 03 28 00 */ cmpw r3, r5 /* 80057154 000540B4 40 80 00 08 */ bge lbl_8005715C lbl_80057158: /* 80057158 000540B8 42 00 00 00 */ bdnz lbl_80057158 lbl_8005715C: /* 8005715C 000540BC 38 00 00 00 */ li r0, 0 /* 80057160 000540C0 90 1E 00 14 */ stw r0, 0x14(r30) lbl_80057164: /* 80057164 000540C4 34 1E 00 04 */ addic. r0, r30, 4 /* 80057168 000540C8 41 82 00 44 */ beq lbl_800571AC /* 8005716C 000540CC 80 1E 00 08 */ lwz r0, 8(r30) /* 80057170 000540D0 80 7E 00 10 */ lwz r3, 0x10(r30) /* 80057174 000540D4 54 00 18 38 */ slwi r0, r0, 3 /* 80057178 000540D8 7C 03 02 14 */ add r0, r3, r0 /* 8005717C 000540DC 90 61 00 0C */ stw r3, 0xc(r1) /* 80057180 000540E0 7C 64 1B 78 */ mr r4, r3 /* 80057184 000540E4 90 01 00 14 */ stw r0, 0x14(r1) /* 80057188 000540E8 90 01 00 10 */ stw r0, 0x10(r1) /* 8005718C 000540EC 90 61 00 08 */ stw r3, 8(r1) /* 80057190 000540F0 48 00 00 08 */ b lbl_80057198 lbl_80057194: /* 80057194 000540F4 38 84 00 08 */ addi r4, r4, 8 lbl_80057198: /* 80057198 000540F8 7C 04 00 40 */ cmplw r4, r0 /* 8005719C 000540FC 40 82 FF F8 */ bne lbl_80057194 /* 800571A0 00054100 28 03 00 00 */ cmplwi r3, 0 /* 800571A4 00054104 41 82 00 08 */ beq lbl_800571AC /* 800571A8 00054108 48 2B E7 89 */ bl Free__7CMemoryFPCv lbl_800571AC: /* 800571AC 0005410C 7F E0 07 35 */ extsh. r0, r31 /* 800571B0 00054110 40 81 00 0C */ ble lbl_800571BC /* 800571B4 00054114 7F C3 F3 78 */ mr r3, r30 /* 800571B8 00054118 48 2B E7 79 */ bl Free__7CMemoryFPCv lbl_800571BC: /* 800571BC 0005411C 80 01 00 24 */ lwz r0, 0x24(r1) /* 800571C0 00054120 7F C3 F3 78 */ mr r3, r30 /* 800571C4 00054124 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800571C8 00054128 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800571CC 0005412C 7C 08 03 A6 */ mtlr r0 /* 800571D0 00054130 38 21 00 20 */ addi r1, r1, 0x20 /* 800571D4 00054134 4E 80 00 20 */ blr .global "LoadRelays__FR12CInputStreamRQ24rstl44vector" "LoadRelays__FR12CInputStreamRQ24rstl44vector": /* 800571D8 00054138 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800571DC 0005413C 7C 08 02 A6 */ mflr r0 /* 800571E0 00054140 90 01 00 34 */ stw r0, 0x34(r1) /* 800571E4 00054144 38 00 00 00 */ li r0, 0 /* 800571E8 00054148 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800571EC 0005414C 7C 9F 23 78 */ mr r31, r4 /* 800571F0 00054150 93 C1 00 28 */ stw r30, 0x28(r1) /* 800571F4 00054154 7C 7E 1B 78 */ mr r30, r3 /* 800571F8 00054158 93 A1 00 24 */ stw r29, 0x24(r1) /* 800571FC 0005415C 93 81 00 20 */ stw r28, 0x20(r1) /* 80057200 00054160 90 03 00 04 */ stw r0, 4(r3) /* 80057204 00054164 7F E3 FB 78 */ mr r3, r31 /* 80057208 00054168 90 1E 00 08 */ stw r0, 8(r30) /* 8005720C 0005416C 90 1E 00 0C */ stw r0, 0xc(r30) /* 80057210 00054170 48 2E 7A 75 */ bl ReadLong__12CInputStreamFv /* 80057214 00054174 7C 7D 1B 78 */ mr r29, r3 /* 80057218 00054178 7F C3 F3 78 */ mr r3, r30 /* 8005721C 0005417C 7F A4 EB 78 */ mr r4, r29 /* 80057220 00054180 48 00 23 DD */ bl "reserve__Q24rstl44vectorFi" /* 80057224 00054184 3B 80 00 00 */ li r28, 0 /* 80057228 00054188 48 00 00 7C */ b lbl_800572A4 lbl_8005722C: /* 8005722C 0005418C 7F E4 FB 78 */ mr r4, r31 /* 80057230 00054190 38 61 00 08 */ addi r3, r1, 8 /* 80057234 00054194 48 00 1F 81 */ bl __ct__6CRelayFR12CInputStream /* 80057238 00054198 80 1E 00 04 */ lwz r0, 4(r30) /* 8005723C 0005419C 80 BE 00 08 */ lwz r5, 8(r30) /* 80057240 000541A0 7C 00 28 00 */ cmpw r0, r5 /* 80057244 000541A4 41 80 00 1C */ blt lbl_80057260 /* 80057248 000541A8 2C 05 00 00 */ cmpwi r5, 0 /* 8005724C 000541AC 7F C3 F3 78 */ mr r3, r30 /* 80057250 000541B0 38 80 00 04 */ li r4, 4 /* 80057254 000541B4 41 82 00 08 */ beq lbl_8005725C /* 80057258 000541B8 54 A4 08 3C */ slwi r4, r5, 1 lbl_8005725C: /* 8005725C 000541BC 48 00 23 A1 */ bl "reserve__Q24rstl44vectorFi" lbl_80057260: /* 80057260 000541C0 80 1E 00 04 */ lwz r0, 4(r30) /* 80057264 000541C4 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80057268 000541C8 1C 00 00 0C */ mulli r0, r0, 0xc /* 8005726C 000541CC 7C 63 02 15 */ add. r3, r3, r0 /* 80057270 000541D0 41 82 00 24 */ beq lbl_80057294 /* 80057274 000541D4 80 01 00 08 */ lwz r0, 8(r1) /* 80057278 000541D8 90 03 00 00 */ stw r0, 0(r3) /* 8005727C 000541DC 80 01 00 0C */ lwz r0, 0xc(r1) /* 80057280 000541E0 90 03 00 04 */ stw r0, 4(r3) /* 80057284 000541E4 A0 01 00 10 */ lhz r0, 0x10(r1) /* 80057288 000541E8 B0 03 00 08 */ sth r0, 8(r3) /* 8005728C 000541EC 88 01 00 12 */ lbz r0, 0x12(r1) /* 80057290 000541F0 98 03 00 0A */ stb r0, 0xa(r3) lbl_80057294: /* 80057294 000541F4 80 7E 00 04 */ lwz r3, 4(r30) /* 80057298 000541F8 3B 9C 00 01 */ addi r28, r28, 1 /* 8005729C 000541FC 38 03 00 01 */ addi r0, r3, 1 /* 800572A0 00054200 90 1E 00 04 */ stw r0, 4(r30) lbl_800572A4: /* 800572A4 00054204 7C 1C E8 00 */ cmpw r28, r29 /* 800572A8 00054208 41 80 FF 84 */ blt lbl_8005722C /* 800572AC 0005420C 80 01 00 34 */ lwz r0, 0x34(r1) /* 800572B0 00054210 7F C3 F3 78 */ mr r3, r30 /* 800572B4 00054214 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800572B8 00054218 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800572BC 0005421C 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800572C0 00054220 83 81 00 20 */ lwz r28, 0x20(r1) /* 800572C4 00054224 7C 08 03 A6 */ mtlr r0 /* 800572C8 00054228 38 21 00 30 */ addi r1, r1, 0x30 /* 800572CC 0005422C 4E 80 00 20 */ blr .global __dt__11CDummyWorldFv __dt__11CDummyWorldFv: /* 800572D0 00054230 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800572D4 00054234 7C 08 02 A6 */ mflr r0 /* 800572D8 00054238 90 01 00 24 */ stw r0, 0x24(r1) /* 800572DC 0005423C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800572E0 00054240 93 C1 00 18 */ stw r30, 0x18(r1) /* 800572E4 00054244 7C 9E 23 78 */ mr r30, r4 /* 800572E8 00054248 93 A1 00 14 */ stw r29, 0x14(r1) /* 800572EC 0005424C 7C 7D 1B 79 */ or. r29, r3, r3 /* 800572F0 00054250 41 82 00 9C */ beq lbl_8005738C /* 800572F4 00054254 3C 60 80 3E */ lis r3, lbl_803D9FC0@ha /* 800572F8 00054258 34 1D 00 34 */ addic. r0, r29, 0x34 /* 800572FC 0005425C 38 03 9F C0 */ addi r0, r3, lbl_803D9FC0@l /* 80057300 00054260 90 1D 00 00 */ stw r0, 0(r29) /* 80057304 00054264 41 82 00 0C */ beq lbl_80057310 /* 80057308 00054268 80 7D 00 34 */ lwz r3, 0x34(r29) /* 8005730C 0005426C 48 2B E6 25 */ bl Free__7CMemoryFPCv lbl_80057310: /* 80057310 00054270 34 1D 00 30 */ addic. r0, r29, 0x30 /* 80057314 00054274 41 82 00 24 */ beq lbl_80057338 /* 80057318 00054278 80 7D 00 30 */ lwz r3, 0x30(r29) /* 8005731C 0005427C 28 03 00 00 */ cmplwi r3, 0 /* 80057320 00054280 41 82 00 18 */ beq lbl_80057338 /* 80057324 00054284 81 83 00 00 */ lwz r12, 0(r3) /* 80057328 00054288 38 80 00 01 */ li r4, 1 /* 8005732C 0005428C 81 8C 00 08 */ lwz r12, 8(r12) /* 80057330 00054290 7D 89 03 A6 */ mtctr r12 /* 80057334 00054294 4E 80 04 21 */ bctrl lbl_80057338: /* 80057338 00054298 34 1D 00 2C */ addic. r0, r29, 0x2c /* 8005733C 0005429C 41 82 00 28 */ beq lbl_80057364 /* 80057340 000542A0 83 FD 00 2C */ lwz r31, 0x2c(r29) /* 80057344 000542A4 28 1F 00 00 */ cmplwi r31, 0 /* 80057348 000542A8 41 82 00 1C */ beq lbl_80057364 /* 8005734C 000542AC 41 82 00 10 */ beq lbl_8005735C /* 80057350 000542B0 7F E3 FB 78 */ mr r3, r31 /* 80057354 000542B4 38 80 00 00 */ li r4, 0 /* 80057358 000542B8 48 2E 9A E9 */ bl __dt__6CTokenFv lbl_8005735C: /* 8005735C 000542BC 7F E3 FB 78 */ mr r3, r31 /* 80057360 000542C0 48 2B E5 D1 */ bl Free__7CMemoryFPCv lbl_80057364: /* 80057364 000542C4 38 7D 00 18 */ addi r3, r29, 0x18 /* 80057368 000542C8 38 80 FF FF */ li r4, -1 /* 8005736C 000542CC 48 00 00 41 */ bl sub_800573ac /* 80057370 000542D0 7F A3 EB 78 */ mr r3, r29 /* 80057374 000542D4 38 80 00 00 */ li r4, 0 /* 80057378 000542D8 48 00 1D F5 */ bl __dt__6IWorldFv /* 8005737C 000542DC 7F C0 07 35 */ extsh. r0, r30 /* 80057380 000542E0 40 81 00 0C */ ble lbl_8005738C /* 80057384 000542E4 7F A3 EB 78 */ mr r3, r29 /* 80057388 000542E8 48 2B E5 A9 */ bl Free__7CMemoryFPCv lbl_8005738C: /* 8005738C 000542EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80057390 000542F0 7F A3 EB 78 */ mr r3, r29 /* 80057394 000542F4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80057398 000542F8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8005739C 000542FC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800573A0 00054300 7C 08 03 A6 */ mtlr r0 /* 800573A4 00054304 38 21 00 20 */ addi r1, r1, 0x20 /* 800573A8 00054308 4E 80 00 20 */ blr .global sub_800573ac sub_800573ac: /* 800573AC 0005430C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800573B0 00054310 7C 08 02 A6 */ mflr r0 /* 800573B4 00054314 90 01 00 34 */ stw r0, 0x34(r1) /* 800573B8 00054318 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800573BC 0005431C 93 C1 00 28 */ stw r30, 0x28(r1) /* 800573C0 00054320 93 A1 00 24 */ stw r29, 0x24(r1) /* 800573C4 00054324 7C 9D 23 78 */ mr r29, r4 /* 800573C8 00054328 93 81 00 20 */ stw r28, 0x20(r1) /* 800573CC 0005432C 7C 7C 1B 79 */ or. r28, r3, r3 /* 800573D0 00054330 41 82 00 88 */ beq lbl_80057458 /* 800573D4 00054334 80 1C 00 04 */ lwz r0, 4(r28) /* 800573D8 00054338 83 DC 00 0C */ lwz r30, 0xc(r28) /* 800573DC 0005433C 54 00 18 38 */ slwi r0, r0, 3 /* 800573E0 00054340 7F FE 02 14 */ add r31, r30, r0 /* 800573E4 00054344 93 C1 00 10 */ stw r30, 0x10(r1) /* 800573E8 00054348 93 E1 00 08 */ stw r31, 8(r1) /* 800573EC 0005434C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800573F0 00054350 93 C1 00 14 */ stw r30, 0x14(r1) /* 800573F4 00054354 48 00 00 3C */ b lbl_80057430 lbl_800573F8: /* 800573F8 00054358 28 1E 00 00 */ cmplwi r30, 0 /* 800573FC 0005435C 41 82 00 30 */ beq lbl_8005742C /* 80057400 00054360 88 1E 00 00 */ lbz r0, 0(r30) /* 80057404 00054364 28 00 00 00 */ cmplwi r0, 0 /* 80057408 00054368 41 82 00 24 */ beq lbl_8005742C /* 8005740C 0005436C 80 7E 00 04 */ lwz r3, 4(r30) /* 80057410 00054370 28 03 00 00 */ cmplwi r3, 0 /* 80057414 00054374 41 82 00 18 */ beq lbl_8005742C /* 80057418 00054378 81 83 00 00 */ lwz r12, 0(r3) /* 8005741C 0005437C 38 80 00 01 */ li r4, 1 /* 80057420 00054380 81 8C 00 08 */ lwz r12, 8(r12) /* 80057424 00054384 7D 89 03 A6 */ mtctr r12 /* 80057428 00054388 4E 80 04 21 */ bctrl lbl_8005742C: /* 8005742C 0005438C 3B DE 00 08 */ addi r30, r30, 8 lbl_80057430: /* 80057430 00054390 7C 1E F8 40 */ cmplw r30, r31 /* 80057434 00054394 40 82 FF C4 */ bne lbl_800573F8 /* 80057438 00054398 80 7C 00 0C */ lwz r3, 0xc(r28) /* 8005743C 0005439C 28 03 00 00 */ cmplwi r3, 0 /* 80057440 000543A0 41 82 00 08 */ beq lbl_80057448 /* 80057444 000543A4 48 2B E4 ED */ bl Free__7CMemoryFPCv lbl_80057448: /* 80057448 000543A8 7F A0 07 35 */ extsh. r0, r29 /* 8005744C 000543AC 40 81 00 0C */ ble lbl_80057458 /* 80057450 000543B0 7F 83 E3 78 */ mr r3, r28 /* 80057454 000543B4 48 2B E4 DD */ bl Free__7CMemoryFPCv lbl_80057458: /* 80057458 000543B8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005745C 000543BC 7F 83 E3 78 */ mr r3, r28 /* 80057460 000543C0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80057464 000543C4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80057468 000543C8 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8005746C 000543CC 83 81 00 20 */ lwz r28, 0x20(r1) /* 80057470 000543D0 7C 08 03 A6 */ mtlr r0 /* 80057474 000543D4 38 21 00 30 */ addi r1, r1, 0x30 /* 80057478 000543D8 4E 80 00 20 */ blr .global __ct__11CDummyWorldFUi __ct__11CDummyWorldFUi: /* 8005747C 000543DC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80057480 000543E0 7C 08 02 A6 */ mflr r0 /* 80057484 000543E4 3C C0 80 3E */ lis r6, lbl_803D9FC0@ha /* 80057488 000543E8 3C E0 80 3E */ lis r7, lbl_803DA04C@ha /* 8005748C 000543EC 90 01 00 24 */ stw r0, 0x24(r1) /* 80057490 000543F0 38 07 A0 4C */ addi r0, r7, lbl_803DA04C@l /* 80057494 000543F4 39 06 9F C0 */ addi r8, r6, lbl_803D9FC0@l /* 80057498 000543F8 38 E0 00 00 */ li r7, 0 /* 8005749C 000543FC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800574A0 00054400 7C 7F 1B 78 */ mr r31, r3 /* 800574A4 00054404 38 C0 FF FF */ li r6, -1 /* 800574A8 00054408 3C 60 4D 4C */ lis r3, 0x4D4C564C@ha /* 800574AC 0005440C 93 C1 00 18 */ stw r30, 0x18(r1) /* 800574B0 00054410 90 1F 00 00 */ stw r0, 0(r31) /* 800574B4 00054414 38 03 56 4C */ addi r0, r3, 0x4D4C564C@l /* 800574B8 00054418 91 1F 00 00 */ stw r8, 0(r31) /* 800574BC 0005441C 98 BF 00 04 */ stb r5, 4(r31) /* 800574C0 00054420 90 FF 00 08 */ stw r7, 8(r31) /* 800574C4 00054424 90 9F 00 0C */ stw r4, 0xc(r31) /* 800574C8 00054428 90 DF 00 14 */ stw r6, 0x14(r31) /* 800574CC 0005442C 90 FF 00 1C */ stw r7, 0x1c(r31) /* 800574D0 00054430 90 FF 00 20 */ stw r7, 0x20(r31) /* 800574D4 00054434 90 FF 00 24 */ stw r7, 0x24(r31) /* 800574D8 00054438 90 DF 00 28 */ stw r6, 0x28(r31) /* 800574DC 0005443C 90 FF 00 2C */ stw r7, 0x2c(r31) /* 800574E0 00054440 90 FF 00 30 */ stw r7, 0x30(r31) /* 800574E4 00054444 90 FF 00 34 */ stw r7, 0x34(r31) /* 800574E8 00054448 90 FF 00 38 */ stw r7, 0x38(r31) /* 800574EC 0005444C 80 6D A3 90 */ lwz r3, kInvalidAreaId@sda21(r13) /* 800574F0 00054450 90 7F 00 3C */ stw r3, 0x3c(r31) /* 800574F4 00054454 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) /* 800574F8 00054458 90 81 00 14 */ stw r4, 0x14(r1) /* 800574FC 0005445C 38 81 00 10 */ addi r4, r1, 0x10 /* 80057500 00054460 38 63 00 04 */ addi r3, r3, 4 /* 80057504 00054464 90 01 00 10 */ stw r0, 0x10(r1) /* 80057508 00054468 48 2E 47 49 */ bl ResourceSize__10CResLoaderCFRC10SObjectTag /* 8005750C 0005446C 3C A0 80 3D */ lis r5, lbl_803CCF70@ha /* 80057510 00054470 3C 80 80 3D */ lis r4, kUnknownType__10CCallStack@ha /* 80057514 00054474 90 7F 00 38 */ stw r3, 0x38(r31) /* 80057518 00054478 38 A5 CF 70 */ addi r5, r5, lbl_803CCF70@l /* 8005751C 0005447C 38 C4 6A A8 */ addi r6, r4, kUnknownType__10CCallStack@l /* 80057520 00054480 38 61 00 08 */ addi r3, r1, 8 /* 80057524 00054484 38 A5 00 01 */ addi r5, r5, 1 /* 80057528 00054488 38 80 FF FF */ li r4, -1 /* 8005752C 0005448C 48 27 EE A9 */ bl __ct__10CCallStackFUiPCcPCc /* 80057530 00054490 7C 67 1B 78 */ mr r7, r3 /* 80057534 00054494 80 7F 00 38 */ lwz r3, 0x38(r31) /* 80057538 00054498 38 80 00 02 */ li r4, 2 /* 8005753C 0005449C 38 A0 00 01 */ li r5, 1 /* 80057540 000544A0 38 C0 00 00 */ li r6, 0 /* 80057544 000544A4 48 2B E4 51 */ bl Alloc__7CMemoryFUlQ210IAllocator5EHintQ210IAllocator6EScopeQ210IAllocator5ETypeRC10CCallStack /* 80057548 000544A8 7C 7E 1B 78 */ mr r30, r3 /* 8005754C 000544AC 80 7F 00 34 */ lwz r3, 0x34(r31) /* 80057550 000544B0 48 2B E3 E1 */ bl Free__7CMemoryFPCv /* 80057554 000544B4 93 DF 00 34 */ stw r30, 0x34(r31) /* 80057558 000544B8 38 81 00 10 */ addi r4, r1, 0x10 /* 8005755C 000544BC 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) /* 80057560 000544C0 80 BF 00 34 */ lwz r5, 0x34(r31) /* 80057564 000544C4 38 63 00 04 */ addi r3, r3, 4 /* 80057568 000544C8 48 2E 46 11 */ bl LoadResourceAsync__10CResLoaderFRC10SObjectTagPc /* 8005756C 000544CC 80 1F 00 30 */ lwz r0, 0x30(r31) /* 80057570 000544D0 7C 7E 1B 78 */ mr r30, r3 /* 80057574 000544D4 28 00 00 00 */ cmplwi r0, 0 /* 80057578 000544D8 41 82 00 1C */ beq lbl_80057594 /* 8005757C 000544DC 7C 03 03 78 */ mr r3, r0 /* 80057580 000544E0 38 80 00 01 */ li r4, 1 /* 80057584 000544E4 81 83 00 00 */ lwz r12, 0(r3) /* 80057588 000544E8 81 8C 00 08 */ lwz r12, 8(r12) /* 8005758C 000544EC 7D 89 03 A6 */ mtctr r12 /* 80057590 000544F0 4E 80 04 21 */ bctrl lbl_80057594: /* 80057594 000544F4 93 DF 00 30 */ stw r30, 0x30(r31) /* 80057598 000544F8 7F E3 FB 78 */ mr r3, r31 /* 8005759C 000544FC 80 01 00 24 */ lwz r0, 0x24(r1) /* 800575A0 00054500 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800575A4 00054504 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800575A8 00054508 7C 08 03 A6 */ mtlr r0 /* 800575AC 0005450C 38 21 00 20 */ addi r1, r1, 0x20 /* 800575B0 00054510 4E 80 00 20 */ blr .global IGetGameAreas__6CWorldCFv IGetGameAreas__6CWorldCFv: /* 800575B4 00054514 80 63 00 18 */ lwz r3, 0x18(r3) /* 800575B8 00054518 4E 80 00 20 */ blr .global IGetDefaultAudioTrack__6CWorldCFv IGetDefaultAudioTrack__6CWorldCFv: /* 800575BC 0005451C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800575C0 00054520 7C 08 02 A6 */ mflr r0 /* 800575C4 00054524 38 84 00 84 */ addi r4, r4, 0x84 /* 800575C8 00054528 90 01 00 14 */ stw r0, 0x14(r1) /* 800575CC 0005452C 48 2E 6B 95 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800575D0 00054530 80 01 00 14 */ lwz r0, 0x14(r1) /* 800575D4 00054534 7C 08 03 A6 */ mtlr r0 /* 800575D8 00054538 38 21 00 10 */ addi r1, r1, 0x10 /* 800575DC 0005453C 4E 80 00 20 */ blr .global ICheckWorldComplete__6CWorldFv ICheckWorldComplete__6CWorldFv: /* 800575E0 00054540 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800575E4 00054544 7C 08 02 A6 */ mflr r0 /* 800575E8 00054548 38 80 00 00 */ li r4, 0 /* 800575EC 0005454C 38 C0 FF FF */ li r6, -1 /* 800575F0 00054550 90 01 00 14 */ stw r0, 0x14(r1) /* 800575F4 00054554 38 A1 00 08 */ addi r5, r1, 8 /* 800575F8 00054558 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 800575FC 0005455C 90 01 00 08 */ stw r0, 8(r1) /* 80057600 00054560 48 00 0D 29 */ bl CheckWorldComplete__6CWorldFP13CStateManager7TAreaIdUi /* 80057604 00054564 80 01 00 14 */ lwz r0, 0x14(r1) /* 80057608 00054568 7C 08 03 A6 */ mtlr r0 /* 8005760C 0005456C 38 21 00 10 */ addi r1, r1, 0x10 /* 80057610 00054570 4E 80 00 20 */ blr .global IGetCurrentAreaId__6CWorldCFv IGetCurrentAreaId__6CWorldCFv: /* 80057614 00054574 80 04 00 68 */ lwz r0, 0x68(r4) /* 80057618 00054578 90 03 00 00 */ stw r0, 0(r3) /* 8005761C 0005457C 4E 80 00 20 */ blr .global IGetAreaAlways__6CWorldCF7TAreaId IGetAreaAlways__6CWorldCF7TAreaId: /* 80057620 00054580 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80057624 00054584 80 04 00 00 */ lwz r0, 0(r4) /* 80057628 00054588 80 83 00 20 */ lwz r4, 0x20(r3) /* 8005762C 0005458C 54 03 18 38 */ slwi r3, r0, 3 /* 80057630 00054590 90 01 00 08 */ stw r0, 8(r1) /* 80057634 00054594 38 03 00 04 */ addi r0, r3, 4 /* 80057638 00054598 7C 64 00 2E */ lwzx r3, r4, r0 /* 8005763C 0005459C 38 21 00 10 */ addi r1, r1, 0x10 /* 80057640 000545A0 4E 80 00 20 */ blr .global IMapWorld__6CWorldFv IMapWorld__6CWorldFv: /* 80057644 000545A4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80057648 000545A8 7C 08 02 A6 */ mflr r0 /* 8005764C 000545AC 90 01 00 14 */ stw r0, 0x14(r1) /* 80057650 000545B0 48 00 00 4D */ bl GetMapWorld__6CWorldCFv /* 80057654 000545B4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80057658 000545B8 7C 08 03 A6 */ mtlr r0 /* 8005765C 000545BC 38 21 00 10 */ addi r1, r1, 0x10 /* 80057660 000545C0 4E 80 00 20 */ blr .global IGetMapWorld__6CWorldCFv IGetMapWorld__6CWorldCFv: /* 80057664 000545C4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80057668 000545C8 7C 08 02 A6 */ mflr r0 /* 8005766C 000545CC 90 01 00 14 */ stw r0, 0x14(r1) /* 80057670 000545D0 48 00 00 2D */ bl GetMapWorld__6CWorldCFv /* 80057674 000545D4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80057678 000545D8 7C 08 03 A6 */ mtlr r0 /* 8005767C 000545DC 38 21 00 10 */ addi r1, r1, 0x10 /* 80057680 000545E0 4E 80 00 20 */ blr .global IGetSaveWorldAssetId__6CWorldCFv IGetSaveWorldAssetId__6CWorldCFv: /* 80057684 000545E4 80 63 00 10 */ lwz r3, 0x10(r3) /* 80057688 000545E8 4E 80 00 20 */ blr .global IGetStringTableAssetId__6CWorldCFv IGetStringTableAssetId__6CWorldCFv: /* 8005768C 000545EC 80 63 00 0C */ lwz r3, 0xc(r3) /* 80057690 000545F0 4E 80 00 20 */ blr .global IGetWorldAssetId__6CWorldCFv IGetWorldAssetId__6CWorldCFv: /* 80057694 000545F4 80 63 00 08 */ lwz r3, 8(r3) /* 80057698 000545F8 4E 80 00 20 */ blr .global GetMapWorld__6CWorldCFv GetMapWorld__6CWorldCFv: /* 8005769C 000545FC 80 63 00 28 */ lwz r3, 0x28(r3) /* 800576A0 00054600 80 63 00 08 */ lwz r3, 8(r3) /* 800576A4 00054604 4E 80 00 20 */ blr .global UnloadSoundGroups__6CWorldFv UnloadSoundGroups__6CWorldFv: /* 800576A8 00054608 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800576AC 0005460C 7C 08 02 A6 */ mflr r0 /* 800576B0 00054610 90 01 00 14 */ stw r0, 0x14(r1) /* 800576B4 00054614 93 E1 00 0C */ stw r31, 0xc(r1) /* 800576B8 00054618 3B E0 00 00 */ li r31, 0 /* 800576BC 0005461C 93 C1 00 08 */ stw r30, 8(r1) /* 800576C0 00054620 7C 7E 1B 78 */ mr r30, r3 /* 800576C4 00054624 48 00 00 0C */ b lbl_800576D0 lbl_800576C8: /* 800576C8 00054628 48 2F 42 29 */ bl SysPopGroupFromARAM__9CAudioSysFv /* 800576CC 0005462C 3B FF 00 01 */ addi r31, r31, 1 lbl_800576D0: /* 800576D0 00054630 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 800576D4 00054634 7C 1F 00 40 */ cmplw r31, r0 /* 800576D8 00054638 41 80 FF F0 */ blt lbl_800576C8 /* 800576DC 0005463C 83 FE 00 80 */ lwz r31, 0x80(r30) /* 800576E0 00054640 48 00 00 1C */ b lbl_800576FC lbl_800576E4: /* 800576E4 00054644 88 1F 00 08 */ lbz r0, 8(r31) /* 800576E8 00054648 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800576EC 0005464C 41 82 00 0C */ beq lbl_800576F8 /* 800576F0 00054650 38 7F 00 0C */ addi r3, r31, 0xc /* 800576F4 00054654 48 2F 43 75 */ bl "SysUnloadGroupSet__9CAudioSysFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_800576F8: /* 800576F8 00054658 3B FF 00 28 */ addi r31, r31, 0x28 lbl_800576FC: /* 800576FC 0005465C 80 1E 00 78 */ lwz r0, 0x78(r30) /* 80057700 00054660 80 7E 00 80 */ lwz r3, 0x80(r30) /* 80057704 00054664 1C 00 00 28 */ mulli r0, r0, 0x28 /* 80057708 00054668 7C 03 02 14 */ add r0, r3, r0 /* 8005770C 0005466C 7C 1F 00 40 */ cmplw r31, r0 /* 80057710 00054670 40 82 FF D4 */ bne lbl_800576E4 /* 80057714 00054674 80 01 00 14 */ lwz r0, 0x14(r1) /* 80057718 00054678 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005771C 0005467C 83 C1 00 08 */ lwz r30, 8(r1) /* 80057720 00054680 7C 08 03 A6 */ mtlr r0 /* 80057724 00054684 38 21 00 10 */ addi r1, r1, 0x10 /* 80057728 00054688 4E 80 00 20 */ blr .global LoadSoundGroup__6CWorldFUcUiRQ26CWorld15CSoundGroupData LoadSoundGroup__6CWorldFUcUiRQ26CWorld15CSoundGroupData: /* 8005772C 0005468C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80057730 00054690 7C 08 02 A6 */ mflr r0 /* 80057734 00054694 90 01 00 34 */ stw r0, 0x34(r1) /* 80057738 00054698 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8005773C 0005469C 7C DF 33 78 */ mr r31, r6 /* 80057740 000546A0 38 C0 00 01 */ li r6, 1 /* 80057744 000546A4 93 C1 00 28 */ stw r30, 0x28(r1) /* 80057748 000546A8 7C BE 2B 78 */ mr r30, r5 /* 8005774C 000546AC 93 A1 00 24 */ stw r29, 0x24(r1) /* 80057750 000546B0 7C 9D 23 78 */ mr r29, r4 /* 80057754 000546B4 7F C4 F3 78 */ mr r4, r30 /* 80057758 000546B8 93 81 00 20 */ stw r28, 0x20(r1) /* 8005775C 000546BC 7C 7C 1B 78 */ mr r28, r3 /* 80057760 000546C0 88 1F 00 08 */ lbz r0, 8(r31) /* 80057764 000546C4 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 /* 80057768 000546C8 98 1F 00 08 */ stb r0, 8(r31) /* 8005776C 000546CC 80 6D A0 64 */ lwz r3, gpSimplePool@sda21(r13) /* 80057770 000546D0 48 2F 4B 41 */ bl SysLoadGroupSet__9CAudioSysFP11CSimplePoolUi /* 80057774 000546D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80057778 000546D8 40 82 00 70 */ bne lbl_800577E8 /* 8005777C 000546DC 7F C3 F3 78 */ mr r3, r30 /* 80057780 000546E0 48 2F 40 C5 */ bl SysGetGroupSetName__9CAudioSysFUi /* 80057784 000546E4 7C 64 1B 78 */ mr r4, r3 /* 80057788 000546E8 38 61 00 08 */ addi r3, r1, 8 /* 8005778C 000546EC 48 2E 69 D5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80057790 000546F0 7F A4 EB 78 */ mr r4, r29 /* 80057794 000546F4 38 61 00 08 */ addi r3, r1, 8 /* 80057798 000546F8 48 2F 41 79 */ bl "SysPushGroupIntoARAM__9CAudioSysFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Uc" /* 8005779C 000546FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800577A0 00054700 41 82 00 38 */ beq lbl_800577D8 /* 800577A4 00054704 88 1F 00 08 */ lbz r0, 8(r31) /* 800577A8 00054708 38 60 00 01 */ li r3, 1 /* 800577AC 0005470C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 800577B0 00054710 38 7F 00 0C */ addi r3, r31, 0xc /* 800577B4 00054714 98 1F 00 08 */ stb r0, 8(r31) /* 800577B8 00054718 38 81 00 08 */ addi r4, r1, 8 /* 800577BC 0005471C 48 2E 65 A1 */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800577C0 00054720 80 9C 00 6C */ lwz r4, 0x6c(r28) /* 800577C4 00054724 38 61 00 08 */ addi r3, r1, 8 /* 800577C8 00054728 38 04 00 01 */ addi r0, r4, 1 /* 800577CC 0005472C 90 1C 00 6C */ stw r0, 0x6c(r28) /* 800577D0 00054730 48 2F 48 15 */ bl "SysUnloadSampleData__9CAudioSysFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800577D4 00054734 48 00 00 0C */ b lbl_800577E0 lbl_800577D8: /* 800577D8 00054738 38 61 00 08 */ addi r3, r1, 8 /* 800577DC 0005473C 48 2F 42 8D */ bl "SysUnloadGroupSet__9CAudioSysFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_800577E0: /* 800577E0 00054740 38 61 00 08 */ addi r3, r1, 8 /* 800577E4 00054744 48 2E 62 FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_800577E8: /* 800577E8 00054748 80 01 00 34 */ lwz r0, 0x34(r1) /* 800577EC 0005474C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800577F0 00054750 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800577F4 00054754 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800577F8 00054758 83 81 00 20 */ lwz r28, 0x20(r1) /* 800577FC 0005475C 7C 08 03 A6 */ mtlr r0 /* 80057800 00054760 38 21 00 30 */ addi r1, r1, 0x30 /* 80057804 00054764 4E 80 00 20 */ blr .global LoadSoundGroups__6CWorldFv LoadSoundGroups__6CWorldFv: /* 80057808 00054768 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 8005780C 0005476C 7C 08 02 A6 */ mflr r0 /* 80057810 00054770 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80057814 00054774 BF 21 00 94 */ stmw r25, 0x94(r1) /* 80057818 00054778 7C 7B 1B 78 */ mr r27, r3 /* 8005781C 0005477C 81 83 00 00 */ lwz r12, 0(r3) /* 80057820 00054780 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80057824 00054784 7D 89 03 A6 */ mtctr r12 /* 80057828 00054788 4E 80 04 21 */ bctrl /* 8005782C 0005478C 80 8D A0 88 */ lwz r4, gpTweakManager@sda21(r13) /* 80057830 00054790 7C 65 1B 78 */ mr r5, r3 /* 80057834 00054794 38 61 00 40 */ addi r3, r1, 0x40 /* 80057838 00054798 48 1C 49 2D */ bl sub_8021c164 /* 8005783C 0005479C 80 01 00 44 */ lwz r0, 0x44(r1) /* 80057840 000547A0 80 61 00 48 */ lwz r3, 0x48(r1) /* 80057844 000547A4 2C 00 00 00 */ cmpwi r0, 0 /* 80057848 000547A8 90 01 00 54 */ stw r0, 0x54(r1) /* 8005784C 000547AC 90 61 00 58 */ stw r3, 0x58(r1) /* 80057850 000547B0 40 82 00 18 */ bne lbl_80057868 /* 80057854 000547B4 2C 03 00 00 */ cmpwi r3, 0 /* 80057858 000547B8 40 82 00 10 */ bne lbl_80057868 /* 8005785C 000547BC 38 00 00 00 */ li r0, 0 /* 80057860 000547C0 90 01 00 5C */ stw r0, 0x5c(r1) /* 80057864 000547C4 48 00 00 68 */ b lbl_800578CC lbl_80057868: /* 80057868 000547C8 80 01 00 58 */ lwz r0, 0x58(r1) /* 8005786C 000547CC 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d /* 80057870 000547D0 40 82 00 10 */ bne lbl_80057880 /* 80057874 000547D4 38 00 00 00 */ li r0, 0 /* 80057878 000547D8 90 01 00 5C */ stw r0, 0x5c(r1) /* 8005787C 000547DC 48 00 00 1C */ b lbl_80057898 lbl_80057880: /* 80057880 000547E0 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80057884 000547E4 38 A0 00 00 */ li r5, 0 /* 80057888 000547E8 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 8005788C 000547EC 38 84 00 01 */ addi r4, r4, 1 /* 80057890 000547F0 48 2B DF 89 */ bl __nwa__FUlPCcPCc /* 80057894 000547F4 90 61 00 5C */ stw r3, 0x5c(r1) lbl_80057898: /* 80057898 000547F8 80 01 00 54 */ lwz r0, 0x54(r1) /* 8005789C 000547FC 80 81 00 4C */ lwz r4, 0x4c(r1) /* 800578A0 00054800 80 61 00 5C */ lwz r3, 0x5c(r1) /* 800578A4 00054804 7C 09 03 A6 */ mtctr r0 /* 800578A8 00054808 2C 00 00 00 */ cmpwi r0, 0 /* 800578AC 0005480C 40 81 00 20 */ ble lbl_800578CC lbl_800578B0: /* 800578B0 00054810 28 03 00 00 */ cmplwi r3, 0 /* 800578B4 00054814 41 82 00 0C */ beq lbl_800578C0 /* 800578B8 00054818 80 04 00 00 */ lwz r0, 0(r4) /* 800578BC 0005481C 90 03 00 00 */ stw r0, 0(r3) lbl_800578C0: /* 800578C0 00054820 38 63 00 04 */ addi r3, r3, 4 /* 800578C4 00054824 38 84 00 04 */ addi r4, r4, 4 /* 800578C8 00054828 42 00 FF E8 */ bdnz lbl_800578B0 lbl_800578CC: /* 800578CC 0005482C 80 01 00 44 */ lwz r0, 0x44(r1) /* 800578D0 00054830 80 61 00 4C */ lwz r3, 0x4c(r1) /* 800578D4 00054834 54 00 10 3A */ slwi r0, r0, 2 /* 800578D8 00054838 7C 03 02 14 */ add r0, r3, r0 /* 800578DC 0005483C 90 61 00 1C */ stw r3, 0x1c(r1) /* 800578E0 00054840 7C 64 1B 78 */ mr r4, r3 /* 800578E4 00054844 90 01 00 24 */ stw r0, 0x24(r1) /* 800578E8 00054848 90 01 00 20 */ stw r0, 0x20(r1) /* 800578EC 0005484C 90 61 00 18 */ stw r3, 0x18(r1) /* 800578F0 00054850 48 00 00 08 */ b lbl_800578F8 lbl_800578F4: /* 800578F4 00054854 38 84 00 04 */ addi r4, r4, 4 lbl_800578F8: /* 800578F8 00054858 7C 04 00 40 */ cmplw r4, r0 /* 800578FC 0005485C 40 82 FF F8 */ bne lbl_800578F4 /* 80057900 00054860 28 03 00 00 */ cmplwi r3, 0 /* 80057904 00054864 41 82 00 08 */ beq lbl_8005790C /* 80057908 00054868 48 2B E0 29 */ bl Free__7CMemoryFPCv lbl_8005790C: /* 8005790C 0005486C 80 81 00 54 */ lwz r4, 0x54(r1) /* 80057910 00054870 2C 04 00 00 */ cmpwi r4, 0 /* 80057914 00054874 40 81 01 84 */ ble lbl_80057A98 /* 80057918 00054878 80 1B 00 78 */ lwz r0, 0x78(r27) /* 8005791C 0005487C 38 7B 00 74 */ addi r3, r27, 0x74 /* 80057920 00054880 7C 80 22 14 */ add r4, r0, r4 /* 80057924 00054884 48 00 1D E5 */ bl "reserve__Q24rstl61vectorFi" /* 80057928 00054888 80 01 00 54 */ lwz r0, 0x54(r1) /* 8005792C 0005488C 3C 60 43 53 */ lis r3, 0x43534E47@ha /* 80057930 00054890 83 C1 00 5C */ lwz r30, 0x5c(r1) /* 80057934 00054894 3B A1 00 6C */ addi r29, r1, 0x6c /* 80057938 00054898 54 00 10 3A */ slwi r0, r0, 2 /* 8005793C 0005489C 3B 81 00 7C */ addi r28, r1, 0x7c /* 80057940 000548A0 3B E3 4E 47 */ addi r31, r3, 0x43534E47@l /* 80057944 000548A4 7F 5E 02 14 */ add r26, r30, r0 /* 80057948 000548A8 48 00 01 48 */ b lbl_80057A90 lbl_8005794C: /* 8005794C 000548AC 80 1E 00 00 */ lwz r0, 0(r30) /* 80057950 000548B0 38 61 00 28 */ addi r3, r1, 0x28 /* 80057954 000548B4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80057958 000548B8 38 A1 00 30 */ addi r5, r1, 0x30 /* 8005795C 000548BC 93 E1 00 30 */ stw r31, 0x30(r1) /* 80057960 000548C0 90 01 00 34 */ stw r0, 0x34(r1) /* 80057964 000548C4 81 84 00 00 */ lwz r12, 0(r4) /* 80057968 000548C8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8005796C 000548CC 7D 89 03 A6 */ mtctr r12 /* 80057970 000548D0 4E 80 04 21 */ bctrl /* 80057974 000548D4 38 61 00 38 */ addi r3, r1, 0x38 /* 80057978 000548D8 38 81 00 28 */ addi r4, r1, 0x28 /* 8005797C 000548DC 48 2E 95 2D */ bl __ct__6CTokenFRC6CToken /* 80057980 000548E0 38 61 00 28 */ addi r3, r1, 0x28 /* 80057984 000548E4 38 80 FF FF */ li r4, -1 /* 80057988 000548E8 48 2E 94 B9 */ bl __dt__6CTokenFv /* 8005798C 000548EC 38 61 00 38 */ addi r3, r1, 0x38 /* 80057990 000548F0 48 2E 94 7D */ bl GetObj__6CTokenFv /* 80057994 000548F4 80 83 00 04 */ lwz r4, 4(r3) /* 80057998 000548F8 38 61 00 38 */ addi r3, r1, 0x38 /* 8005799C 000548FC 83 24 00 04 */ lwz r25, 4(r4) /* 800579A0 00054900 48 2E 94 6D */ bl GetObj__6CTokenFv /* 800579A4 00054904 80 83 00 04 */ lwz r4, 4(r3) /* 800579A8 00054908 7F 25 CB 78 */ mr r5, r25 /* 800579AC 0005490C 38 61 00 60 */ addi r3, r1, 0x60 /* 800579B0 00054910 A8 84 00 02 */ lha r4, 2(r4) /* 800579B4 00054914 48 00 16 C9 */ bl __ct__Q26CWorld15CSoundGroupDataFiUi /* 800579B8 00054918 80 1B 00 78 */ lwz r0, 0x78(r27) /* 800579BC 0005491C 80 BB 00 7C */ lwz r5, 0x7c(r27) /* 800579C0 00054920 7C 00 28 00 */ cmpw r0, r5 /* 800579C4 00054924 41 80 00 1C */ blt lbl_800579E0 /* 800579C8 00054928 2C 05 00 00 */ cmpwi r5, 0 /* 800579CC 0005492C 38 7B 00 74 */ addi r3, r27, 0x74 /* 800579D0 00054930 38 80 00 04 */ li r4, 4 /* 800579D4 00054934 41 82 00 08 */ beq lbl_800579DC /* 800579D8 00054938 54 A4 08 3C */ slwi r4, r5, 1 lbl_800579DC: /* 800579DC 0005493C 48 00 1D 2D */ bl "reserve__Q24rstl61vectorFi" lbl_800579E0: /* 800579E0 00054940 80 1B 00 78 */ lwz r0, 0x78(r27) /* 800579E4 00054944 80 7B 00 80 */ lwz r3, 0x80(r27) /* 800579E8 00054948 1C 00 00 28 */ mulli r0, r0, 0x28 /* 800579EC 0005494C 7F 23 02 15 */ add. r25, r3, r0 /* 800579F0 00054950 41 82 00 4C */ beq lbl_80057A3C /* 800579F4 00054954 80 01 00 60 */ lwz r0, 0x60(r1) /* 800579F8 00054958 7F A4 EB 78 */ mr r4, r29 /* 800579FC 0005495C 38 79 00 0C */ addi r3, r25, 0xc /* 80057A00 00054960 90 19 00 00 */ stw r0, 0(r25) /* 80057A04 00054964 80 01 00 64 */ lwz r0, 0x64(r1) /* 80057A08 00054968 90 19 00 04 */ stw r0, 4(r25) /* 80057A0C 0005496C 88 01 00 68 */ lbz r0, 0x68(r1) /* 80057A10 00054970 98 19 00 08 */ stb r0, 8(r25) /* 80057A14 00054974 48 2E 67 4D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80057A18 00054978 88 01 00 84 */ lbz r0, 0x84(r1) /* 80057A1C 0005497C 98 19 00 24 */ stb r0, 0x24(r25) /* 80057A20 00054980 88 01 00 84 */ lbz r0, 0x84(r1) /* 80057A24 00054984 28 00 00 00 */ cmplwi r0, 0 /* 80057A28 00054988 41 82 00 14 */ beq lbl_80057A3C /* 80057A2C 0005498C 34 79 00 1C */ addic. r3, r25, 0x1c /* 80057A30 00054990 41 82 00 0C */ beq lbl_80057A3C /* 80057A34 00054994 7F 84 E3 78 */ mr r4, r28 /* 80057A38 00054998 48 2E 94 71 */ bl __ct__6CTokenFRC6CToken lbl_80057A3C: /* 80057A3C 0005499C 80 7B 00 78 */ lwz r3, 0x78(r27) /* 80057A40 000549A0 28 1C 00 00 */ cmplwi r28, 0 /* 80057A44 000549A4 38 03 00 01 */ addi r0, r3, 1 /* 80057A48 000549A8 90 1B 00 78 */ stw r0, 0x78(r27) /* 80057A4C 000549AC 41 82 00 24 */ beq lbl_80057A70 /* 80057A50 000549B0 88 01 00 84 */ lbz r0, 0x84(r1) /* 80057A54 000549B4 28 00 00 00 */ cmplwi r0, 0 /* 80057A58 000549B8 41 82 00 10 */ beq lbl_80057A68 /* 80057A5C 000549BC 7F 83 E3 78 */ mr r3, r28 /* 80057A60 000549C0 38 80 FF FF */ li r4, -1 /* 80057A64 000549C4 48 2E 93 DD */ bl __dt__6CTokenFv lbl_80057A68: /* 80057A68 000549C8 38 00 00 00 */ li r0, 0 /* 80057A6C 000549CC 98 01 00 84 */ stb r0, 0x84(r1) lbl_80057A70: /* 80057A70 000549D0 28 1D 00 00 */ cmplwi r29, 0 /* 80057A74 000549D4 41 82 00 0C */ beq lbl_80057A80 /* 80057A78 000549D8 7F A3 EB 78 */ mr r3, r29 /* 80057A7C 000549DC 48 2E 60 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80057A80: /* 80057A80 000549E0 38 61 00 38 */ addi r3, r1, 0x38 /* 80057A84 000549E4 38 80 00 00 */ li r4, 0 /* 80057A88 000549E8 48 2E 93 B9 */ bl __dt__6CTokenFv /* 80057A8C 000549EC 3B DE 00 04 */ addi r30, r30, 4 lbl_80057A90: /* 80057A90 000549F0 7C 1E D0 40 */ cmplw r30, r26 /* 80057A94 000549F4 40 82 FE B8 */ bne lbl_8005794C lbl_80057A98: /* 80057A98 000549F8 83 3B 00 80 */ lwz r25, 0x80(r27) /* 80057A9C 000549FC 48 00 00 2C */ b lbl_80057AC8 lbl_80057AA0: /* 80057AA0 00054A00 88 19 00 08 */ lbz r0, 8(r25) /* 80057AA4 00054A04 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80057AA8 00054A08 40 82 00 1C */ bne lbl_80057AC4 /* 80057AAC 00054A0C 80 19 00 00 */ lwz r0, 0(r25) /* 80057AB0 00054A10 7F 63 DB 78 */ mr r3, r27 /* 80057AB4 00054A14 80 B9 00 04 */ lwz r5, 4(r25) /* 80057AB8 00054A18 7F 26 CB 78 */ mr r6, r25 /* 80057ABC 00054A1C 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 80057AC0 00054A20 4B FF FC 6D */ bl LoadSoundGroup__6CWorldFUcUiRQ26CWorld15CSoundGroupData lbl_80057AC4: /* 80057AC4 00054A24 3B 39 00 28 */ addi r25, r25, 0x28 lbl_80057AC8: /* 80057AC8 00054A28 80 1B 00 78 */ lwz r0, 0x78(r27) /* 80057ACC 00054A2C 80 7B 00 80 */ lwz r3, 0x80(r27) /* 80057AD0 00054A30 1C 00 00 28 */ mulli r0, r0, 0x28 /* 80057AD4 00054A34 7C 03 02 14 */ add r0, r3, r0 /* 80057AD8 00054A38 7C 19 00 40 */ cmplw r25, r0 /* 80057ADC 00054A3C 40 82 FF C4 */ bne lbl_80057AA0 /* 80057AE0 00054A40 80 01 00 54 */ lwz r0, 0x54(r1) /* 80057AE4 00054A44 80 61 00 5C */ lwz r3, 0x5c(r1) /* 80057AE8 00054A48 54 00 10 3A */ slwi r0, r0, 2 /* 80057AEC 00054A4C 7C 03 02 14 */ add r0, r3, r0 /* 80057AF0 00054A50 90 61 00 0C */ stw r3, 0xc(r1) /* 80057AF4 00054A54 7C 64 1B 78 */ mr r4, r3 /* 80057AF8 00054A58 90 01 00 14 */ stw r0, 0x14(r1) /* 80057AFC 00054A5C 90 01 00 10 */ stw r0, 0x10(r1) /* 80057B00 00054A60 90 61 00 08 */ stw r3, 8(r1) /* 80057B04 00054A64 48 00 00 08 */ b lbl_80057B0C lbl_80057B08: /* 80057B08 00054A68 38 84 00 04 */ addi r4, r4, 4 lbl_80057B0C: /* 80057B0C 00054A6C 7C 04 00 40 */ cmplw r4, r0 /* 80057B10 00054A70 40 82 FF F8 */ bne lbl_80057B08 /* 80057B14 00054A74 28 03 00 00 */ cmplwi r3, 0 /* 80057B18 00054A78 41 82 00 08 */ beq lbl_80057B20 /* 80057B1C 00054A7C 48 2B DE 15 */ bl Free__7CMemoryFPCv lbl_80057B20: /* 80057B20 00054A80 BB 21 00 94 */ lmw r25, 0x94(r1) /* 80057B24 00054A84 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 80057B28 00054A88 7C 08 03 A6 */ mtlr r0 /* 80057B2C 00054A8C 38 21 00 B0 */ addi r1, r1, 0xb0 /* 80057B30 00054A90 4E 80 00 20 */ blr .global MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain: /* 80057B34 00054A94 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80057B38 00054A98 7C 08 02 A6 */ mflr r0 /* 80057B3C 00054A9C 90 01 00 14 */ stw r0, 0x14(r1) /* 80057B40 00054AA0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80057B44 00054AA4 93 C1 00 08 */ stw r30, 8(r1) /* 80057B48 00054AA8 7C 9E 23 78 */ mr r30, r4 /* 80057B4C 00054AAC 80 04 01 38 */ lwz r0, 0x138(r4) /* 80057B50 00054AB0 7C 05 00 00 */ cmpw r5, r0 /* 80057B54 00054AB4 41 82 00 40 */ beq lbl_80057B94 /* 80057B58 00054AB8 2C 00 FF FF */ cmpwi r0, -1 /* 80057B5C 00054ABC 41 82 00 20 */ beq lbl_80057B7C /* 80057B60 00054AC0 54 00 10 3A */ slwi r0, r0, 2 /* 80057B64 00054AC4 7C 83 02 14 */ add r4, r3, r0 /* 80057B68 00054AC8 80 04 00 4C */ lwz r0, 0x4c(r4) /* 80057B6C 00054ACC 7C 00 F0 40 */ cmplw r0, r30 /* 80057B70 00054AD0 40 82 00 0C */ bne lbl_80057B7C /* 80057B74 00054AD4 80 1E 01 30 */ lwz r0, 0x130(r30) /* 80057B78 00054AD8 90 04 00 4C */ stw r0, 0x4c(r4) lbl_80057B7C: /* 80057B7C 00054ADC 54 A0 10 3A */ slwi r0, r5, 2 /* 80057B80 00054AE0 7F E3 02 14 */ add r31, r3, r0 /* 80057B84 00054AE4 7F C3 F3 78 */ mr r3, r30 /* 80057B88 00054AE8 80 9F 00 4C */ lwz r4, 0x4c(r31) /* 80057B8C 00054AEC 48 00 80 05 */ bl SetChain__9CGameAreaFP9CGameAreai /* 80057B90 00054AF0 93 DF 00 4C */ stw r30, 0x4c(r31) lbl_80057B94: /* 80057B94 00054AF4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80057B98 00054AF8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80057B9C 00054AFC 83 C1 00 08 */ lwz r30, 8(r1) /* 80057BA0 00054B00 7C 08 03 A6 */ mtlr r0 /* 80057BA4 00054B04 38 21 00 10 */ addi r1, r1, 0x10 /* 80057BA8 00054B08 4E 80 00 20 */ blr .global TravelToArea__6CWorldFRC7TAreaIdR13CStateManagerb TravelToArea__6CWorldFRC7TAreaIdR13CStateManagerb: /* 80057BAC 00054B0C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80057BB0 00054B10 7C 08 02 A6 */ mflr r0 /* 80057BB4 00054B14 90 01 00 44 */ stw r0, 0x44(r1) /* 80057BB8 00054B18 BE 81 00 10 */ stmw r20, 0x10(r1) /* 80057BBC 00054B1C 7C 75 1B 78 */ mr r21, r3 /* 80057BC0 00054B20 7C 96 23 78 */ mr r22, r4 /* 80057BC4 00054B24 7C B7 2B 78 */ mr r23, r5 /* 80057BC8 00054B28 7C D8 33 78 */ mr r24, r6 /* 80057BCC 00054B2C 80 64 00 00 */ lwz r3, 0(r4) /* 80057BD0 00054B30 2C 03 00 00 */ cmpwi r3, 0 /* 80057BD4 00054B34 41 80 02 68 */ blt lbl_80057E3C /* 80057BD8 00054B38 80 15 00 18 */ lwz r0, 0x18(r21) /* 80057BDC 00054B3C 7C 03 00 00 */ cmpw r3, r0 /* 80057BE0 00054B40 41 80 00 08 */ blt lbl_80057BE8 /* 80057BE4 00054B44 48 00 02 58 */ b lbl_80057E3C lbl_80057BE8: /* 80057BE8 00054B48 88 15 00 70 */ lbz r0, 0x70(r21) /* 80057BEC 00054B4C 38 60 00 00 */ li r3, 0 /* 80057BF0 00054B50 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 80057BF4 00054B54 98 15 00 70 */ stb r0, 0x70(r21) /* 80057BF8 00054B58 80 16 00 00 */ lwz r0, 0(r22) /* 80057BFC 00054B5C 90 15 00 68 */ stw r0, 0x68(r21) /* 80057C00 00054B60 82 95 00 4C */ lwz r20, 0x4c(r21) /* 80057C04 00054B64 48 00 00 30 */ b lbl_80057C34 lbl_80057C08: /* 80057C08 00054B68 7E 83 A3 78 */ mr r3, r20 /* 80057C0C 00054B6C 7E E4 BB 78 */ mr r4, r23 /* 80057C10 00054B70 48 00 8D A9 */ bl Invalidate__9CGameAreaFP13CStateManager /* 80057C14 00054B74 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80057C18 00054B78 41 82 00 18 */ beq lbl_80057C30 /* 80057C1C 00054B7C 7E A3 AB 78 */ mr r3, r21 /* 80057C20 00054B80 7E 84 A3 78 */ mr r4, r20 /* 80057C24 00054B84 38 A0 00 01 */ li r5, 1 /* 80057C28 00054B88 4B FF FF 0D */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain /* 80057C2C 00054B8C 48 00 00 10 */ b lbl_80057C3C lbl_80057C30: /* 80057C30 00054B90 82 94 01 30 */ lwz r20, 0x130(r20) lbl_80057C34: /* 80057C34 00054B94 28 14 00 00 */ cmplwi r20, 0 /* 80057C38 00054B98 40 82 FF D0 */ bne lbl_80057C08 lbl_80057C3C: /* 80057C3C 00054B9C 82 95 00 58 */ lwz r20, 0x58(r21) /* 80057C40 00054BA0 48 00 00 18 */ b lbl_80057C58 lbl_80057C44: /* 80057C44 00054BA4 7E 84 A3 78 */ mr r4, r20 /* 80057C48 00054BA8 82 94 01 30 */ lwz r20, 0x130(r20) /* 80057C4C 00054BAC 7E A3 AB 78 */ mr r3, r21 /* 80057C50 00054BB0 38 A0 00 04 */ li r5, 4 /* 80057C54 00054BB4 4B FF FE E1 */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain lbl_80057C58: /* 80057C58 00054BB8 28 14 00 00 */ cmplwi r20, 0 /* 80057C5C 00054BBC 40 82 FF E8 */ bne lbl_80057C44 /* 80057C60 00054BC0 82 95 00 54 */ lwz r20, 0x54(r21) /* 80057C64 00054BC4 48 00 00 18 */ b lbl_80057C7C lbl_80057C68: /* 80057C68 00054BC8 7E 84 A3 78 */ mr r4, r20 /* 80057C6C 00054BCC 82 94 01 30 */ lwz r20, 0x130(r20) /* 80057C70 00054BD0 7E A3 AB 78 */ mr r3, r21 /* 80057C74 00054BD4 38 A0 00 00 */ li r5, 0 /* 80057C78 00054BD8 4B FF FE BD */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain lbl_80057C7C: /* 80057C7C 00054BDC 28 14 00 00 */ cmplwi r20, 0 /* 80057C80 00054BE0 40 82 FF E8 */ bne lbl_80057C68 /* 80057C84 00054BE4 80 16 00 00 */ lwz r0, 0(r22) /* 80057C88 00054BE8 80 95 00 20 */ lwz r4, 0x20(r21) /* 80057C8C 00054BEC 54 03 18 38 */ slwi r3, r0, 3 /* 80057C90 00054BF0 38 03 00 04 */ addi r0, r3, 4 /* 80057C94 00054BF4 7F 84 00 2E */ lwzx r28, r4, r0 /* 80057C98 00054BF8 80 1C 01 38 */ lwz r0, 0x138(r28) /* 80057C9C 00054BFC 2C 00 00 04 */ cmpwi r0, 4 /* 80057CA0 00054C00 41 82 00 14 */ beq lbl_80057CB4 /* 80057CA4 00054C04 88 15 00 70 */ lbz r0, 0x70(r21) /* 80057CA8 00054C08 38 60 00 01 */ li r3, 1 /* 80057CAC 00054C0C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 80057CB0 00054C10 98 15 00 70 */ stb r0, 0x70(r21) lbl_80057CB4: /* 80057CB4 00054C14 7F 83 E3 78 */ mr r3, r28 /* 80057CB8 00054C18 7E E4 BB 78 */ mr r4, r23 /* 80057CBC 00054C1C 48 00 93 E9 */ bl Validate__9CGameAreaFR13CStateManager /* 80057CC0 00054C20 7E A3 AB 78 */ mr r3, r21 /* 80057CC4 00054C24 7F 84 E3 78 */ mr r4, r28 /* 80057CC8 00054C28 38 A0 00 03 */ li r5, 3 /* 80057CCC 00054C2C 4B FF FE 69 */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain /* 80057CD0 00054C30 7F 83 E3 78 */ mr r3, r28 /* 80057CD4 00054C34 38 80 00 01 */ li r4, 1 /* 80057CD8 00054C38 48 00 7A 51 */ bl SetOcclusionState__9CGameAreaFQ29CGameArea15EOcclusionState /* 80057CDC 00054C3C 2C 18 00 00 */ cmpwi r24, 0 /* 80057CE0 00054C40 3B 60 00 00 */ li r27, 0 /* 80057CE4 00054C44 3B 40 00 00 */ li r26, 0 /* 80057CE8 00054C48 40 82 00 C8 */ bne lbl_80057DB0 /* 80057CEC 00054C4C 3B 20 00 00 */ li r25, 0 /* 80057CF0 00054C50 3B A0 00 00 */ li r29, 0 /* 80057CF4 00054C54 48 00 00 B0 */ b lbl_80057DA4 lbl_80057CF8: /* 80057CF8 00054C58 80 1C 00 D8 */ lwz r0, 0xd8(r28) /* 80057CFC 00054C5C 3B 00 00 00 */ li r24, 0 /* 80057D00 00054C60 7F E0 EA 14 */ add r31, r0, r29 /* 80057D04 00054C64 83 DF 00 08 */ lwz r30, 8(r31) /* 80057D08 00054C68 48 00 00 8C */ b lbl_80057D94 lbl_80057D0C: /* 80057D0C 00054C6C 7F E3 FB 78 */ mr r3, r31 /* 80057D10 00054C70 7F 04 C3 78 */ mr r4, r24 /* 80057D14 00054C74 48 00 75 A9 */ bl ShouldLoadOtherArea__Q29IGameArea4DockCFi /* 80057D18 00054C78 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80057D1C 00054C7C 41 82 00 74 */ beq lbl_80057D90 /* 80057D20 00054C80 7F E4 FB 78 */ mr r4, r31 /* 80057D24 00054C84 7F 05 C3 78 */ mr r5, r24 /* 80057D28 00054C88 38 61 00 08 */ addi r3, r1, 8 /* 80057D2C 00054C8C 48 00 75 F9 */ bl GetConnectedAreaId__Q29IGameArea4DockCFi /* 80057D30 00054C90 80 01 00 08 */ lwz r0, 8(r1) /* 80057D34 00054C94 80 95 00 20 */ lwz r4, 0x20(r21) /* 80057D38 00054C98 54 03 18 38 */ slwi r3, r0, 3 /* 80057D3C 00054C9C 90 01 00 0C */ stw r0, 0xc(r1) /* 80057D40 00054CA0 38 03 00 04 */ addi r0, r3, 4 /* 80057D44 00054CA4 7E 84 00 2E */ lwzx r20, r4, r0 /* 80057D48 00054CA8 88 14 00 F0 */ lbz r0, 0xf0(r20) /* 80057D4C 00054CAC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80057D50 00054CB0 41 82 00 40 */ beq lbl_80057D90 /* 80057D54 00054CB4 57 60 06 3F */ clrlwi. r0, r27, 0x18 /* 80057D58 00054CB8 40 82 00 28 */ bne lbl_80057D80 /* 80057D5C 00054CBC 7E A3 AB 78 */ mr r3, r21 /* 80057D60 00054CC0 7E 84 A3 78 */ mr r4, r20 /* 80057D64 00054CC4 7E E5 BB 78 */ mr r5, r23 /* 80057D68 00054CC8 48 00 00 E9 */ bl ScheduleAreaToLoad__6CWorldFP9CGameAreaR13CStateManager /* 80057D6C 00054CCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80057D70 00054CD0 7C 7B 1B 78 */ mr r27, r3 /* 80057D74 00054CD4 41 82 00 1C */ beq lbl_80057D90 /* 80057D78 00054CD8 7E 9A A3 78 */ mr r26, r20 /* 80057D7C 00054CDC 48 00 00 14 */ b lbl_80057D90 lbl_80057D80: /* 80057D80 00054CE0 7E A3 AB 78 */ mr r3, r21 /* 80057D84 00054CE4 7E 84 A3 78 */ mr r4, r20 /* 80057D88 00054CE8 7E E5 BB 78 */ mr r5, r23 /* 80057D8C 00054CEC 48 00 00 C5 */ bl ScheduleAreaToLoad__6CWorldFP9CGameAreaR13CStateManager lbl_80057D90: /* 80057D90 00054CF0 3B 18 00 01 */ addi r24, r24, 1 lbl_80057D94: /* 80057D94 00054CF4 7C 18 F0 00 */ cmpw r24, r30 /* 80057D98 00054CF8 41 80 FF 74 */ blt lbl_80057D0C /* 80057D9C 00054CFC 3B BD 00 4C */ addi r29, r29, 0x4c /* 80057DA0 00054D00 3B 39 00 01 */ addi r25, r25, 1 lbl_80057DA4: /* 80057DA4 00054D04 80 1C 00 D0 */ lwz r0, 0xd0(r28) /* 80057DA8 00054D08 7C 19 00 00 */ cmpw r25, r0 /* 80057DAC 00054D0C 41 80 FF 4C */ blt lbl_80057CF8 lbl_80057DB0: /* 80057DB0 00054D10 82 95 00 5C */ lwz r20, 0x5c(r21) /* 80057DB4 00054D14 3B 00 00 00 */ li r24, 0 /* 80057DB8 00054D18 48 00 00 18 */ b lbl_80057DD0 lbl_80057DBC: /* 80057DBC 00054D1C 7E 84 A3 78 */ mr r4, r20 /* 80057DC0 00054D20 82 94 01 30 */ lwz r20, 0x130(r20) /* 80057DC4 00054D24 7E A3 AB 78 */ mr r3, r21 /* 80057DC8 00054D28 38 A0 00 00 */ li r5, 0 /* 80057DCC 00054D2C 4B FF FD 69 */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain lbl_80057DD0: /* 80057DD0 00054D30 28 14 00 00 */ cmplwi r20, 0 /* 80057DD4 00054D34 40 82 FF E8 */ bne lbl_80057DBC /* 80057DD8 00054D38 82 95 00 4C */ lwz r20, 0x4c(r21) /* 80057DDC 00054D3C 48 00 00 14 */ b lbl_80057DF0 lbl_80057DE0: /* 80057DE0 00054D40 7E 83 A3 78 */ mr r3, r20 /* 80057DE4 00054D44 48 00 79 C9 */ bl RemoveStaticGeometry__9CGameAreaFv /* 80057DE8 00054D48 82 94 01 30 */ lwz r20, 0x130(r20) /* 80057DEC 00054D4C 3B 18 00 01 */ addi r24, r24, 1 lbl_80057DF0: /* 80057DF0 00054D50 28 14 00 00 */ cmplwi r20, 0 /* 80057DF4 00054D54 40 82 FF EC */ bne lbl_80057DE0 /* 80057DF8 00054D58 2C 18 00 00 */ cmpwi r24, 0 /* 80057DFC 00054D5C 40 82 00 24 */ bne lbl_80057E20 /* 80057E00 00054D60 28 1A 00 00 */ cmplwi r26, 0 /* 80057E04 00054D64 41 82 00 1C */ beq lbl_80057E20 /* 80057E08 00054D68 88 15 00 70 */ lbz r0, 0x70(r21) /* 80057E0C 00054D6C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80057E10 00054D70 40 82 00 10 */ bne lbl_80057E20 /* 80057E14 00054D74 7F 43 D3 78 */ mr r3, r26 /* 80057E18 00054D78 7E E4 BB 78 */ mr r4, r23 /* 80057E1C 00054D7C 48 00 8F C9 */ bl StartStreamIn__9CGameAreaFR13CStateManager lbl_80057E20: /* 80057E20 00054D80 82 96 00 00 */ lwz r20, 0(r22) /* 80057E24 00054D84 7E A3 AB 78 */ mr r3, r21 /* 80057E28 00054D88 4B FF F8 75 */ bl GetMapWorld__6CWorldCFv /* 80057E2C 00054D8C 7E A4 AB 78 */ mr r4, r21 /* 80057E30 00054D90 7E 85 A3 78 */ mr r5, r20 /* 80057E34 00054D94 38 C0 00 03 */ li r6, 3 /* 80057E38 00054D98 48 04 93 D1 */ bl SetWhichMapAreasLoaded__9CMapWorldFRC6IWorldii lbl_80057E3C: /* 80057E3C 00054D9C BA 81 00 10 */ lmw r20, 0x10(r1) /* 80057E40 00054DA0 80 01 00 44 */ lwz r0, 0x44(r1) /* 80057E44 00054DA4 7C 08 03 A6 */ mtlr r0 /* 80057E48 00054DA8 38 21 00 40 */ addi r1, r1, 0x40 /* 80057E4C 00054DAC 4E 80 00 20 */ blr .global ScheduleAreaToLoad__6CWorldFP9CGameAreaR13CStateManager ScheduleAreaToLoad__6CWorldFP9CGameAreaR13CStateManager: /* 80057E50 00054DB0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80057E54 00054DB4 7C 08 02 A6 */ mflr r0 /* 80057E58 00054DB8 90 01 00 14 */ stw r0, 0x14(r1) /* 80057E5C 00054DBC 88 04 00 F0 */ lbz r0, 0xf0(r4) /* 80057E60 00054DC0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80057E64 00054DC4 40 82 00 14 */ bne lbl_80057E78 /* 80057E68 00054DC8 38 A0 00 02 */ li r5, 2 /* 80057E6C 00054DCC 4B FF FC C9 */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain /* 80057E70 00054DD0 38 60 00 01 */ li r3, 1 /* 80057E74 00054DD4 48 00 00 34 */ b lbl_80057EA8 lbl_80057E78: /* 80057E78 00054DD8 80 04 01 38 */ lwz r0, 0x138(r4) /* 80057E7C 00054DDC 2C 00 00 03 */ cmpwi r0, 3 /* 80057E80 00054DE0 41 82 00 24 */ beq lbl_80057EA4 /* 80057E84 00054DE4 2C 00 00 04 */ cmpwi r0, 4 /* 80057E88 00054DE8 41 82 00 14 */ beq lbl_80057E9C /* 80057E8C 00054DEC 88 03 00 70 */ lbz r0, 0x70(r3) /* 80057E90 00054DF0 38 A0 00 01 */ li r5, 1 /* 80057E94 00054DF4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 /* 80057E98 00054DF8 98 03 00 70 */ stb r0, 0x70(r3) lbl_80057E9C: /* 80057E9C 00054DFC 38 A0 00 03 */ li r5, 3 /* 80057EA0 00054E00 4B FF FC 95 */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain lbl_80057EA4: /* 80057EA4 00054E04 38 60 00 00 */ li r3, 0 lbl_80057EA8: /* 80057EA8 00054E08 80 01 00 14 */ lwz r0, 0x14(r1) /* 80057EAC 00054E0C 7C 08 03 A6 */ mtlr r0 /* 80057EB0 00054E10 38 21 00 10 */ addi r1, r1, 0x10 /* 80057EB4 00054E14 4E 80 00 20 */ blr .global __dt__6CWorldFv __dt__6CWorldFv: /* 80057EB8 00054E18 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80057EBC 00054E1C 7C 08 02 A6 */ mflr r0 /* 80057EC0 00054E20 90 01 00 34 */ stw r0, 0x34(r1) /* 80057EC4 00054E24 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80057EC8 00054E28 7C 9F 23 78 */ mr r31, r4 /* 80057ECC 00054E2C 93 C1 00 28 */ stw r30, 0x28(r1) /* 80057ED0 00054E30 7C 7E 1B 79 */ or. r30, r3, r3 /* 80057ED4 00054E34 93 A1 00 24 */ stw r29, 0x24(r1) /* 80057ED8 00054E38 41 82 02 9C */ beq lbl_80058174 /* 80057EDC 00054E3C 3C 80 80 3E */ lis r4, lbl_803DA014@ha /* 80057EE0 00054E40 38 04 A0 14 */ addi r0, r4, lbl_803DA014@l /* 80057EE4 00054E44 90 1E 00 00 */ stw r0, 0(r30) /* 80057EE8 00054E48 4B FF DE C1 */ bl StopSounds__6CWorldFv /* 80057EEC 00054E4C 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 80057EF0 00054E50 48 17 BA 29 */ bl WorldTransitionManager__10CGameStateFv /* 80057EF4 00054E54 80 63 00 00 */ lwz r3, 0(r3) /* 80057EF8 00054E58 80 63 00 00 */ lwz r3, 0(r3) /* 80057EFC 00054E5C 80 03 00 30 */ lwz r0, 0x30(r3) /* 80057F00 00054E60 2C 00 00 00 */ cmpwi r0, 0 /* 80057F04 00054E64 41 82 00 1C */ beq lbl_80057F20 /* 80057F08 00054E68 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) /* 80057F0C 00054E6C 80 03 01 2C */ lwz r0, 0x12c(r3) /* 80057F10 00054E70 2C 00 00 00 */ cmpwi r0, 0 /* 80057F14 00054E74 40 82 00 0C */ bne lbl_80057F20 /* 80057F18 00054E78 48 30 D8 A1 */ bl StopOneShot__19CStreamAudioManagerFv /* 80057F1C 00054E7C 48 00 00 08 */ b lbl_80057F24 lbl_80057F20: /* 80057F20 00054E80 48 30 D9 85 */ bl StopAll__19CStreamAudioManagerFv lbl_80057F24: /* 80057F24 00054E84 7F C3 F3 78 */ mr r3, r30 /* 80057F28 00054E88 4B FF F7 81 */ bl UnloadSoundGroups__6CWorldFv /* 80057F2C 00054E8C 48 14 5E 39 */ bl DisableAuxCallbacks__20CScriptRoomAcousticsFv /* 80057F30 00054E90 34 1E 00 C8 */ addic. r0, r30, 0xc8 /* 80057F34 00054E94 41 82 00 58 */ beq lbl_80057F8C /* 80057F38 00054E98 80 BE 00 C8 */ lwz r5, 0xc8(r30) /* 80057F3C 00054E9C 38 60 00 00 */ li r3, 0 /* 80057F40 00054EA0 2C 05 00 00 */ cmpwi r5, 0 /* 80057F44 00054EA4 40 81 00 40 */ ble lbl_80057F84 /* 80057F48 00054EA8 2C 05 00 08 */ cmpwi r5, 8 /* 80057F4C 00054EAC 38 85 FF F8 */ addi r4, r5, -8 /* 80057F50 00054EB0 40 81 00 20 */ ble lbl_80057F70 /* 80057F54 00054EB4 38 04 00 07 */ addi r0, r4, 7 /* 80057F58 00054EB8 54 00 E8 FE */ srwi r0, r0, 3 /* 80057F5C 00054EBC 7C 09 03 A6 */ mtctr r0 /* 80057F60 00054EC0 2C 04 00 00 */ cmpwi r4, 0 /* 80057F64 00054EC4 40 81 00 0C */ ble lbl_80057F70 lbl_80057F68: /* 80057F68 00054EC8 38 63 00 08 */ addi r3, r3, 8 /* 80057F6C 00054ECC 42 00 FF FC */ bdnz lbl_80057F68 lbl_80057F70: /* 80057F70 00054ED0 7C 03 28 50 */ subf r0, r3, r5 /* 80057F74 00054ED4 7C 09 03 A6 */ mtctr r0 /* 80057F78 00054ED8 7C 03 28 00 */ cmpw r3, r5 /* 80057F7C 00054EDC 40 80 00 08 */ bge lbl_80057F84 lbl_80057F80: /* 80057F80 00054EE0 42 00 00 00 */ bdnz lbl_80057F80 lbl_80057F84: /* 80057F84 00054EE4 38 00 00 00 */ li r0, 0 /* 80057F88 00054EE8 90 1E 00 C8 */ stw r0, 0xc8(r30) lbl_80057F8C: /* 80057F8C 00054EEC 34 1E 00 B4 */ addic. r0, r30, 0xb4 /* 80057F90 00054EF0 41 82 00 30 */ beq lbl_80057FC0 /* 80057F94 00054EF4 88 1E 00 C0 */ lbz r0, 0xc0(r30) /* 80057F98 00054EF8 28 00 00 00 */ cmplwi r0, 0 /* 80057F9C 00054EFC 41 82 00 1C */ beq lbl_80057FB8 /* 80057FA0 00054F00 34 7E 00 B4 */ addic. r3, r30, 0xb4 /* 80057FA4 00054F04 41 82 00 14 */ beq lbl_80057FB8 /* 80057FA8 00054F08 28 03 00 00 */ cmplwi r3, 0 /* 80057FAC 00054F0C 41 82 00 0C */ beq lbl_80057FB8 /* 80057FB0 00054F10 38 80 00 00 */ li r4, 0 /* 80057FB4 00054F14 48 2E 8E 8D */ bl __dt__6CTokenFv lbl_80057FB8: /* 80057FB8 00054F18 38 00 00 00 */ li r0, 0 /* 80057FBC 00054F1C 98 1E 00 C0 */ stb r0, 0xc0(r30) lbl_80057FC0: /* 80057FC0 00054F20 34 1E 00 A4 */ addic. r0, r30, 0xa4 /* 80057FC4 00054F24 41 82 00 30 */ beq lbl_80057FF4 /* 80057FC8 00054F28 88 1E 00 B0 */ lbz r0, 0xb0(r30) /* 80057FCC 00054F2C 28 00 00 00 */ cmplwi r0, 0 /* 80057FD0 00054F30 41 82 00 1C */ beq lbl_80057FEC /* 80057FD4 00054F34 34 7E 00 A4 */ addic. r3, r30, 0xa4 /* 80057FD8 00054F38 41 82 00 14 */ beq lbl_80057FEC /* 80057FDC 00054F3C 28 03 00 00 */ cmplwi r3, 0 /* 80057FE0 00054F40 41 82 00 0C */ beq lbl_80057FEC /* 80057FE4 00054F44 38 80 00 00 */ li r4, 0 /* 80057FE8 00054F48 48 2E 8E 59 */ bl __dt__6CTokenFv lbl_80057FEC: /* 80057FEC 00054F4C 38 00 00 00 */ li r0, 0 /* 80057FF0 00054F50 98 1E 00 B0 */ stb r0, 0xb0(r30) lbl_80057FF4: /* 80057FF4 00054F54 34 1E 00 94 */ addic. r0, r30, 0x94 /* 80057FF8 00054F58 41 82 00 30 */ beq lbl_80058028 /* 80057FFC 00054F5C 88 1E 00 A0 */ lbz r0, 0xa0(r30) /* 80058000 00054F60 28 00 00 00 */ cmplwi r0, 0 /* 80058004 00054F64 41 82 00 1C */ beq lbl_80058020 /* 80058008 00054F68 34 7E 00 94 */ addic. r3, r30, 0x94 /* 8005800C 00054F6C 41 82 00 14 */ beq lbl_80058020 /* 80058010 00054F70 28 03 00 00 */ cmplwi r3, 0 /* 80058014 00054F74 41 82 00 0C */ beq lbl_80058020 /* 80058018 00054F78 38 80 00 00 */ li r4, 0 /* 8005801C 00054F7C 48 2E 8E 25 */ bl __dt__6CTokenFv lbl_80058020: /* 80058020 00054F80 38 00 00 00 */ li r0, 0 /* 80058024 00054F84 98 1E 00 A0 */ stb r0, 0xa0(r30) lbl_80058028: /* 80058028 00054F88 34 1E 00 84 */ addic. r0, r30, 0x84 /* 8005802C 00054F8C 41 82 00 0C */ beq lbl_80058038 /* 80058030 00054F90 38 7E 00 84 */ addi r3, r30, 0x84 /* 80058034 00054F94 48 2E 5A AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80058038: /* 80058038 00054F98 38 7E 00 74 */ addi r3, r30, 0x74 /* 8005803C 00054F9C 38 80 FF FF */ li r4, -1 /* 80058040 00054FA0 48 00 02 25 */ bl sub_80058264 /* 80058044 00054FA4 34 1E 00 48 */ addic. r0, r30, 0x48 /* 80058048 00054FA8 41 82 00 58 */ beq lbl_800580A0 /* 8005804C 00054FAC 80 BE 00 48 */ lwz r5, 0x48(r30) /* 80058050 00054FB0 38 60 00 00 */ li r3, 0 /* 80058054 00054FB4 2C 05 00 00 */ cmpwi r5, 0 /* 80058058 00054FB8 40 81 00 40 */ ble lbl_80058098 /* 8005805C 00054FBC 2C 05 00 08 */ cmpwi r5, 8 /* 80058060 00054FC0 38 85 FF F8 */ addi r4, r5, -8 /* 80058064 00054FC4 40 81 00 20 */ ble lbl_80058084 /* 80058068 00054FC8 38 04 00 07 */ addi r0, r4, 7 /* 8005806C 00054FCC 54 00 E8 FE */ srwi r0, r0, 3 /* 80058070 00054FD0 7C 09 03 A6 */ mtctr r0 /* 80058074 00054FD4 2C 04 00 00 */ cmpwi r4, 0 /* 80058078 00054FD8 40 81 00 0C */ ble lbl_80058084 lbl_8005807C: /* 8005807C 00054FDC 38 63 00 08 */ addi r3, r3, 8 /* 80058080 00054FE0 42 00 FF FC */ bdnz lbl_8005807C lbl_80058084: /* 80058084 00054FE4 7C 03 28 50 */ subf r0, r3, r5 /* 80058088 00054FE8 7C 09 03 A6 */ mtctr r0 /* 8005808C 00054FEC 7C 03 28 00 */ cmpw r3, r5 /* 80058090 00054FF0 40 80 00 08 */ bge lbl_80058098 lbl_80058094: /* 80058094 00054FF4 42 00 00 00 */ bdnz lbl_80058094 lbl_80058098: /* 80058098 00054FF8 38 00 00 00 */ li r0, 0 /* 8005809C 00054FFC 90 1E 00 48 */ stw r0, 0x48(r30) lbl_800580A0: /* 800580A0 00055000 34 1E 00 40 */ addic. r0, r30, 0x40 /* 800580A4 00055004 41 82 00 0C */ beq lbl_800580B0 /* 800580A8 00055008 80 7E 00 40 */ lwz r3, 0x40(r30) /* 800580AC 0005500C 48 2B D8 85 */ bl Free__7CMemoryFPCv lbl_800580B0: /* 800580B0 00055010 34 1E 00 3C */ addic. r0, r30, 0x3c /* 800580B4 00055014 41 82 00 24 */ beq lbl_800580D8 /* 800580B8 00055018 80 7E 00 3C */ lwz r3, 0x3c(r30) /* 800580BC 0005501C 28 03 00 00 */ cmplwi r3, 0 /* 800580C0 00055020 41 82 00 18 */ beq lbl_800580D8 /* 800580C4 00055024 81 83 00 00 */ lwz r12, 0(r3) /* 800580C8 00055028 38 80 00 01 */ li r4, 1 /* 800580CC 0005502C 81 8C 00 08 */ lwz r12, 8(r12) /* 800580D0 00055030 7D 89 03 A6 */ mtctr r12 /* 800580D4 00055034 4E 80 04 21 */ bctrl lbl_800580D8: /* 800580D8 00055038 34 1E 00 2C */ addic. r0, r30, 0x2c /* 800580DC 0005503C 41 82 00 44 */ beq lbl_80058120 /* 800580E0 00055040 80 1E 00 30 */ lwz r0, 0x30(r30) /* 800580E4 00055044 80 7E 00 38 */ lwz r3, 0x38(r30) /* 800580E8 00055048 1C 00 00 0C */ mulli r0, r0, 0xc /* 800580EC 0005504C 90 61 00 0C */ stw r3, 0xc(r1) /* 800580F0 00055050 7C 64 1B 78 */ mr r4, r3 /* 800580F4 00055054 7C 03 02 14 */ add r0, r3, r0 /* 800580F8 00055058 90 61 00 08 */ stw r3, 8(r1) /* 800580FC 0005505C 90 01 00 14 */ stw r0, 0x14(r1) /* 80058100 00055060 90 01 00 10 */ stw r0, 0x10(r1) /* 80058104 00055064 48 00 00 08 */ b lbl_8005810C lbl_80058108: /* 80058108 00055068 38 84 00 0C */ addi r4, r4, 0xc lbl_8005810C: /* 8005810C 0005506C 7C 04 00 40 */ cmplw r4, r0 /* 80058110 00055070 40 82 FF F8 */ bne lbl_80058108 /* 80058114 00055074 28 03 00 00 */ cmplwi r3, 0 /* 80058118 00055078 41 82 00 08 */ beq lbl_80058120 /* 8005811C 0005507C 48 2B D8 15 */ bl Free__7CMemoryFPCv lbl_80058120: /* 80058120 00055080 34 1E 00 28 */ addic. r0, r30, 0x28 /* 80058124 00055084 41 82 00 28 */ beq lbl_8005814C /* 80058128 00055088 83 BE 00 28 */ lwz r29, 0x28(r30) /* 8005812C 0005508C 28 1D 00 00 */ cmplwi r29, 0 /* 80058130 00055090 41 82 00 1C */ beq lbl_8005814C /* 80058134 00055094 41 82 00 10 */ beq lbl_80058144 /* 80058138 00055098 7F A3 EB 78 */ mr r3, r29 /* 8005813C 0005509C 38 80 00 00 */ li r4, 0 /* 80058140 000550A0 48 2E 8D 01 */ bl __dt__6CTokenFv lbl_80058144: /* 80058144 000550A4 7F A3 EB 78 */ mr r3, r29 /* 80058148 000550A8 48 2B D7 E9 */ bl Free__7CMemoryFPCv lbl_8005814C: /* 8005814C 000550AC 38 7E 00 14 */ addi r3, r30, 0x14 /* 80058150 000550B0 38 80 FF FF */ li r4, -1 /* 80058154 000550B4 48 00 00 41 */ bl sub_80058194 /* 80058158 000550B8 7F C3 F3 78 */ mr r3, r30 /* 8005815C 000550BC 38 80 00 00 */ li r4, 0 /* 80058160 000550C0 48 00 10 0D */ bl __dt__6IWorldFv /* 80058164 000550C4 7F E0 07 35 */ extsh. r0, r31 /* 80058168 000550C8 40 81 00 0C */ ble lbl_80058174 /* 8005816C 000550CC 7F C3 F3 78 */ mr r3, r30 /* 80058170 000550D0 48 2B D7 C1 */ bl Free__7CMemoryFPCv lbl_80058174: /* 80058174 000550D4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80058178 000550D8 7F C3 F3 78 */ mr r3, r30 /* 8005817C 000550DC 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80058180 000550E0 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80058184 000550E4 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80058188 000550E8 7C 08 03 A6 */ mtlr r0 /* 8005818C 000550EC 38 21 00 30 */ addi r1, r1, 0x30 /* 80058190 000550F0 4E 80 00 20 */ blr .global sub_80058194 sub_80058194: /* 80058194 000550F4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80058198 000550F8 7C 08 02 A6 */ mflr r0 /* 8005819C 000550FC 90 01 00 34 */ stw r0, 0x34(r1) /* 800581A0 00055100 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800581A4 00055104 93 C1 00 28 */ stw r30, 0x28(r1) /* 800581A8 00055108 93 A1 00 24 */ stw r29, 0x24(r1) /* 800581AC 0005510C 7C 9D 23 78 */ mr r29, r4 /* 800581B0 00055110 93 81 00 20 */ stw r28, 0x20(r1) /* 800581B4 00055114 7C 7C 1B 79 */ or. r28, r3, r3 /* 800581B8 00055118 41 82 00 88 */ beq lbl_80058240 /* 800581BC 0005511C 80 1C 00 04 */ lwz r0, 4(r28) /* 800581C0 00055120 83 DC 00 0C */ lwz r30, 0xc(r28) /* 800581C4 00055124 54 00 18 38 */ slwi r0, r0, 3 /* 800581C8 00055128 7F FE 02 14 */ add r31, r30, r0 /* 800581CC 0005512C 93 C1 00 10 */ stw r30, 0x10(r1) /* 800581D0 00055130 93 E1 00 08 */ stw r31, 8(r1) /* 800581D4 00055134 93 E1 00 0C */ stw r31, 0xc(r1) /* 800581D8 00055138 93 C1 00 14 */ stw r30, 0x14(r1) /* 800581DC 0005513C 48 00 00 3C */ b lbl_80058218 lbl_800581E0: /* 800581E0 00055140 28 1E 00 00 */ cmplwi r30, 0 /* 800581E4 00055144 41 82 00 30 */ beq lbl_80058214 /* 800581E8 00055148 88 1E 00 00 */ lbz r0, 0(r30) /* 800581EC 0005514C 28 00 00 00 */ cmplwi r0, 0 /* 800581F0 00055150 41 82 00 24 */ beq lbl_80058214 /* 800581F4 00055154 80 7E 00 04 */ lwz r3, 4(r30) /* 800581F8 00055158 28 03 00 00 */ cmplwi r3, 0 /* 800581FC 0005515C 41 82 00 18 */ beq lbl_80058214 /* 80058200 00055160 81 83 00 00 */ lwz r12, 0(r3) /* 80058204 00055164 38 80 00 01 */ li r4, 1 /* 80058208 00055168 81 8C 00 08 */ lwz r12, 8(r12) /* 8005820C 0005516C 7D 89 03 A6 */ mtctr r12 /* 80058210 00055170 4E 80 04 21 */ bctrl lbl_80058214: /* 80058214 00055174 3B DE 00 08 */ addi r30, r30, 8 lbl_80058218: /* 80058218 00055178 7C 1E F8 40 */ cmplw r30, r31 /* 8005821C 0005517C 40 82 FF C4 */ bne lbl_800581E0 /* 80058220 00055180 80 7C 00 0C */ lwz r3, 0xc(r28) /* 80058224 00055184 28 03 00 00 */ cmplwi r3, 0 /* 80058228 00055188 41 82 00 08 */ beq lbl_80058230 /* 8005822C 0005518C 48 2B D7 05 */ bl Free__7CMemoryFPCv lbl_80058230: /* 80058230 00055190 7F A0 07 35 */ extsh. r0, r29 /* 80058234 00055194 40 81 00 0C */ ble lbl_80058240 /* 80058238 00055198 7F 83 E3 78 */ mr r3, r28 /* 8005823C 0005519C 48 2B D6 F5 */ bl Free__7CMemoryFPCv lbl_80058240: /* 80058240 000551A0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80058244 000551A4 7F 83 E3 78 */ mr r3, r28 /* 80058248 000551A8 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8005824C 000551AC 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80058250 000551B0 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80058254 000551B4 83 81 00 20 */ lwz r28, 0x20(r1) /* 80058258 000551B8 7C 08 03 A6 */ mtlr r0 /* 8005825C 000551BC 38 21 00 30 */ addi r1, r1, 0x30 /* 80058260 000551C0 4E 80 00 20 */ blr .global sub_80058264 sub_80058264: /* 80058264 000551C4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80058268 000551C8 7C 08 02 A6 */ mflr r0 /* 8005826C 000551CC 90 01 00 34 */ stw r0, 0x34(r1) /* 80058270 000551D0 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 80058274 000551D4 7C 7B 1B 79 */ or. r27, r3, r3 /* 80058278 000551D8 7C 9C 23 78 */ mr r28, r4 /* 8005827C 000551DC 41 82 00 94 */ beq lbl_80058310 /* 80058280 000551E0 80 1B 00 04 */ lwz r0, 4(r27) /* 80058284 000551E4 3B E0 00 00 */ li r31, 0 /* 80058288 000551E8 83 BB 00 0C */ lwz r29, 0xc(r27) /* 8005828C 000551EC 1C 00 00 28 */ mulli r0, r0, 0x28 /* 80058290 000551F0 93 A1 00 10 */ stw r29, 0x10(r1) /* 80058294 000551F4 7F DD 02 14 */ add r30, r29, r0 /* 80058298 000551F8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8005829C 000551FC 93 C1 00 08 */ stw r30, 8(r1) /* 800582A0 00055200 93 C1 00 0C */ stw r30, 0xc(r1) /* 800582A4 00055204 48 00 00 44 */ b lbl_800582E8 lbl_800582A8: /* 800582A8 00055208 28 1D 00 00 */ cmplwi r29, 0 /* 800582AC 0005520C 41 82 00 38 */ beq lbl_800582E4 /* 800582B0 00055210 34 1D 00 1C */ addic. r0, r29, 0x1c /* 800582B4 00055214 41 82 00 20 */ beq lbl_800582D4 /* 800582B8 00055218 88 1D 00 24 */ lbz r0, 0x24(r29) /* 800582BC 0005521C 28 00 00 00 */ cmplwi r0, 0 /* 800582C0 00055220 41 82 00 10 */ beq lbl_800582D0 /* 800582C4 00055224 38 7D 00 1C */ addi r3, r29, 0x1c /* 800582C8 00055228 38 80 FF FF */ li r4, -1 /* 800582CC 0005522C 48 2E 8B 75 */ bl __dt__6CTokenFv lbl_800582D0: /* 800582D0 00055230 9B FD 00 24 */ stb r31, 0x24(r29) lbl_800582D4: /* 800582D4 00055234 34 1D 00 0C */ addic. r0, r29, 0xc /* 800582D8 00055238 41 82 00 0C */ beq lbl_800582E4 /* 800582DC 0005523C 38 7D 00 0C */ addi r3, r29, 0xc /* 800582E0 00055240 48 2E 58 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_800582E4: /* 800582E4 00055244 3B BD 00 28 */ addi r29, r29, 0x28 lbl_800582E8: /* 800582E8 00055248 7C 1D F0 40 */ cmplw r29, r30 /* 800582EC 0005524C 40 82 FF BC */ bne lbl_800582A8 /* 800582F0 00055250 80 7B 00 0C */ lwz r3, 0xc(r27) /* 800582F4 00055254 28 03 00 00 */ cmplwi r3, 0 /* 800582F8 00055258 41 82 00 08 */ beq lbl_80058300 /* 800582FC 0005525C 48 2B D6 35 */ bl Free__7CMemoryFPCv lbl_80058300: /* 80058300 00055260 7F 80 07 35 */ extsh. r0, r28 /* 80058304 00055264 40 81 00 0C */ ble lbl_80058310 /* 80058308 00055268 7F 63 DB 78 */ mr r3, r27 /* 8005830C 0005526C 48 2B D6 25 */ bl Free__7CMemoryFPCv lbl_80058310: /* 80058310 00055270 7F 63 DB 78 */ mr r3, r27 /* 80058314 00055274 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 80058318 00055278 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005831C 0005527C 7C 08 03 A6 */ mtlr r0 /* 80058320 00055280 38 21 00 30 */ addi r1, r1, 0x30 /* 80058324 00055284 4E 80 00 20 */ blr .global CheckWorldComplete__6CWorldFP13CStateManager7TAreaIdUi CheckWorldComplete__6CWorldFP13CStateManager7TAreaIdUi: /* 80058328 00055288 94 21 FE B0 */ stwu r1, -0x150(r1) /* 8005832C 0005528C 7C 08 02 A6 */ mflr r0 /* 80058330 00055290 90 01 01 54 */ stw r0, 0x154(r1) /* 80058334 00055294 DB E1 01 40 */ stfd f31, 0x140(r1) /* 80058338 00055298 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 /* 8005833C 0005529C BF 21 01 24 */ stmw r25, 0x124(r1) /* 80058340 000552A0 3C 06 00 01 */ addis r0, r6, 1 /* 80058344 000552A4 7C 7F 1B 78 */ mr r31, r3 /* 80058348 000552A8 28 00 FF FF */ cmplwi r0, 0xffff /* 8005834C 000552AC 7C 9A 23 78 */ mr r26, r4 /* 80058350 000552B0 41 82 00 58 */ beq lbl_800583A8 /* 80058354 000552B4 38 80 00 00 */ li r4, 0 /* 80058358 000552B8 38 A0 00 00 */ li r5, 0 /* 8005835C 000552BC 90 9F 00 68 */ stw r4, 0x68(r31) /* 80058360 000552C0 80 1F 00 18 */ lwz r0, 0x18(r31) /* 80058364 000552C4 7C 09 03 A6 */ mtctr r0 /* 80058368 000552C8 2C 00 00 00 */ cmpwi r0, 0 /* 8005836C 000552CC 40 81 00 44 */ ble lbl_800583B0 lbl_80058370: /* 80058370 000552D0 80 7F 00 20 */ lwz r3, 0x20(r31) /* 80058374 000552D4 38 04 00 04 */ addi r0, r4, 4 /* 80058378 000552D8 90 A1 00 38 */ stw r5, 0x38(r1) /* 8005837C 000552DC 7C 63 00 2E */ lwzx r3, r3, r0 /* 80058380 000552E0 90 A1 00 3C */ stw r5, 0x3c(r1) /* 80058384 000552E4 80 03 00 84 */ lwz r0, 0x84(r3) /* 80058388 000552E8 7C 06 00 40 */ cmplw r6, r0 /* 8005838C 000552EC 40 82 00 0C */ bne lbl_80058398 /* 80058390 000552F0 90 BF 00 68 */ stw r5, 0x68(r31) /* 80058394 000552F4 48 00 00 1C */ b lbl_800583B0 lbl_80058398: /* 80058398 000552F8 38 A5 00 01 */ addi r5, r5, 1 /* 8005839C 000552FC 38 84 00 08 */ addi r4, r4, 8 /* 800583A0 00055300 42 00 FF D0 */ bdnz lbl_80058370 /* 800583A4 00055304 48 00 00 0C */ b lbl_800583B0 lbl_800583A8: /* 800583A8 00055308 80 05 00 00 */ lwz r0, 0(r5) /* 800583AC 0005530C 90 1F 00 68 */ stw r0, 0x68(r31) lbl_800583B0: /* 800583B0 00055310 80 1F 00 04 */ lwz r0, 4(r31) /* 800583B4 00055314 7C 7A 00 D0 */ neg r3, r26 /* 800583B8 00055318 7C 63 D3 78 */ or r3, r3, r26 /* 800583BC 0005531C 2C 00 00 03 */ cmpwi r0, 3 /* 800583C0 00055320 54 79 0F FE */ srwi r25, r3, 0x1f /* 800583C4 00055324 41 82 07 C0 */ beq lbl_80058B84 /* 800583C8 00055328 40 80 00 1C */ bge lbl_800583E4 /* 800583CC 0005532C 2C 00 00 01 */ cmpwi r0, 1 /* 800583D0 00055330 41 82 06 E4 */ beq lbl_80058AB4 /* 800583D4 00055334 40 80 07 8C */ bge lbl_80058B60 /* 800583D8 00055338 2C 00 00 00 */ cmpwi r0, 0 /* 800583DC 0005533C 40 80 00 18 */ bge lbl_800583F4 /* 800583E0 00055340 48 00 09 B0 */ b lbl_80058D90 lbl_800583E4: /* 800583E4 00055344 2C 00 00 05 */ cmpwi r0, 5 /* 800583E8 00055348 41 82 09 A0 */ beq lbl_80058D88 /* 800583EC 0005534C 40 80 09 A4 */ bge lbl_80058D90 /* 800583F0 00055350 48 00 09 08 */ b lbl_80058CF8 lbl_800583F4: /* 800583F4 00055354 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 800583F8 00055358 81 83 00 00 */ lwz r12, 0(r3) /* 800583FC 0005535C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 80058400 00055360 7D 89 03 A6 */ mtctr r12 /* 80058404 00055364 4E 80 04 21 */ bctrl /* 80058408 00055368 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8005840C 0005536C 40 82 00 0C */ bne lbl_80058418 /* 80058410 00055370 38 60 00 00 */ li r3, 0 /* 80058414 00055374 48 00 09 80 */ b lbl_80058D94 lbl_80058418: /* 80058418 00055378 80 9F 00 40 */ lwz r4, 0x40(r31) /* 8005841C 0005537C 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058420 00055380 80 BF 00 44 */ lwz r5, 0x44(r31) /* 80058424 00055384 48 2E 6D A9 */ bl __ct__15CMemoryInStreamFPCvUl /* 80058428 00055388 38 61 00 F8 */ addi r3, r1, 0xf8 /* 8005842C 0005538C 48 2E 68 59 */ bl ReadLong__12CInputStreamFv /* 80058430 00055390 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058434 00055394 48 2E 68 51 */ bl ReadLong__12CInputStreamFv /* 80058438 00055398 7C 7E 1B 78 */ mr r30, r3 /* 8005843C 0005539C 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058440 000553A0 48 2E 68 45 */ bl ReadLong__12CInputStreamFv /* 80058444 000553A4 28 1E 00 0F */ cmplwi r30, 0xf /* 80058448 000553A8 90 7F 00 0C */ stw r3, 0xc(r31) /* 8005844C 000553AC 41 80 00 10 */ blt lbl_8005845C /* 80058450 000553B0 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058454 000553B4 48 2E 68 31 */ bl ReadLong__12CInputStreamFv /* 80058458 000553B8 90 7F 00 10 */ stw r3, 0x10(r31) lbl_8005845C: /* 8005845C 000553BC 28 1E 00 0C */ cmplwi r30, 0xc /* 80058460 000553C0 41 80 00 CC */ blt lbl_8005852C /* 80058464 000553C4 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058468 000553C8 48 2E 68 1D */ bl ReadLong__12CInputStreamFv /* 8005846C 000553CC 3C 03 00 01 */ addis r0, r3, 1 /* 80058470 000553D0 28 00 FF FF */ cmplwi r0, 0xffff /* 80058474 000553D4 41 82 00 B8 */ beq lbl_8005852C /* 80058478 000553D8 28 19 00 00 */ cmplwi r25, 0 /* 8005847C 000553DC 41 82 00 B0 */ beq lbl_8005852C /* 80058480 000553E0 3C 80 43 4D */ lis r4, 0x434D444C@ha /* 80058484 000553E4 90 61 00 64 */ stw r3, 0x64(r1) /* 80058488 000553E8 38 04 44 4C */ addi r0, r4, 0x434D444C@l /* 8005848C 000553EC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80058490 000553F0 90 01 00 60 */ stw r0, 0x60(r1) /* 80058494 000553F4 38 61 00 58 */ addi r3, r1, 0x58 /* 80058498 000553F8 38 A1 00 60 */ addi r5, r1, 0x60 /* 8005849C 000553FC 81 84 00 00 */ lwz r12, 0(r4) /* 800584A0 00055400 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800584A4 00055404 7D 89 03 A6 */ mtctr r12 /* 800584A8 00055408 4E 80 04 21 */ bctrl /* 800584AC 0005540C 38 61 00 A4 */ addi r3, r1, 0xa4 /* 800584B0 00055410 38 81 00 58 */ addi r4, r1, 0x58 /* 800584B4 00055414 48 2E 89 F5 */ bl __ct__6CTokenFRC6CToken /* 800584B8 00055418 38 00 00 00 */ li r0, 0 /* 800584BC 0005541C 90 01 00 AC */ stw r0, 0xac(r1) /* 800584C0 00055420 88 1F 00 A0 */ lbz r0, 0xa0(r31) /* 800584C4 00055424 28 00 00 00 */ cmplwi r0, 0 /* 800584C8 00055428 40 82 00 2C */ bne lbl_800584F4 /* 800584CC 0005542C 37 3F 00 94 */ addic. r25, r31, 0x94 /* 800584D0 00055430 41 82 00 18 */ beq lbl_800584E8 /* 800584D4 00055434 7F 23 CB 78 */ mr r3, r25 /* 800584D8 00055438 38 81 00 A4 */ addi r4, r1, 0xa4 /* 800584DC 0005543C 48 2E 89 CD */ bl __ct__6CTokenFRC6CToken /* 800584E0 00055440 80 01 00 AC */ lwz r0, 0xac(r1) /* 800584E4 00055444 90 19 00 08 */ stw r0, 8(r25) lbl_800584E8: /* 800584E8 00055448 38 00 00 01 */ li r0, 1 /* 800584EC 0005544C 98 1F 00 A0 */ stb r0, 0xa0(r31) /* 800584F0 00055450 48 00 00 1C */ b lbl_8005850C lbl_800584F4: /* 800584F4 00055454 3B 3F 00 94 */ addi r25, r31, 0x94 /* 800584F8 00055458 38 81 00 A4 */ addi r4, r1, 0xa4 /* 800584FC 0005545C 7F 23 CB 78 */ mr r3, r25 /* 80058500 00055460 48 2E 87 C5 */ bl __as__6CTokenFRC6CToken /* 80058504 00055464 80 01 00 AC */ lwz r0, 0xac(r1) /* 80058508 00055468 90 19 00 08 */ stw r0, 8(r25) lbl_8005850C: /* 8005850C 0005546C 38 61 00 A4 */ addi r3, r1, 0xa4 /* 80058510 00055470 38 80 00 00 */ li r4, 0 /* 80058514 00055474 48 2E 89 2D */ bl __dt__6CTokenFv /* 80058518 00055478 38 61 00 58 */ addi r3, r1, 0x58 /* 8005851C 0005547C 38 80 FF FF */ li r4, -1 /* 80058520 00055480 48 2E 89 21 */ bl __dt__6CTokenFv /* 80058524 00055484 38 7F 00 94 */ addi r3, r31, 0x94 /* 80058528 00055488 48 2E 88 5D */ bl Lock__6CTokenFv lbl_8005852C: /* 8005852C 0005548C 28 1E 00 11 */ cmplwi r30, 0x11 /* 80058530 00055490 41 80 00 60 */ blt lbl_80058590 /* 80058534 00055494 38 61 00 94 */ addi r3, r1, 0x94 /* 80058538 00055498 38 81 00 F8 */ addi r4, r1, 0xf8 /* 8005853C 0005549C 38 A1 00 10 */ addi r5, r1, 0x10 /* 80058540 000554A0 4B FF EC 99 */ bl "LoadRelays__FR12CInputStreamRQ24rstl44vector" /* 80058544 000554A4 38 7F 00 2C */ addi r3, r31, 0x2c /* 80058548 000554A8 38 81 00 94 */ addi r4, r1, 0x94 /* 8005854C 000554AC 48 00 08 65 */ bl sub_80058db0 /* 80058550 000554B0 80 01 00 98 */ lwz r0, 0x98(r1) /* 80058554 000554B4 80 61 00 A0 */ lwz r3, 0xa0(r1) /* 80058558 000554B8 1C 00 00 0C */ mulli r0, r0, 0xc /* 8005855C 000554BC 90 61 00 28 */ stw r3, 0x28(r1) /* 80058560 000554C0 7C 64 1B 78 */ mr r4, r3 /* 80058564 000554C4 7C 03 02 14 */ add r0, r3, r0 /* 80058568 000554C8 90 61 00 24 */ stw r3, 0x24(r1) /* 8005856C 000554CC 90 01 00 30 */ stw r0, 0x30(r1) /* 80058570 000554D0 90 01 00 2C */ stw r0, 0x2c(r1) /* 80058574 000554D4 48 00 00 08 */ b lbl_8005857C lbl_80058578: /* 80058578 000554D8 38 84 00 0C */ addi r4, r4, 0xc lbl_8005857C: /* 8005857C 000554DC 7C 04 00 40 */ cmplw r4, r0 /* 80058580 000554E0 40 82 FF F8 */ bne lbl_80058578 /* 80058584 000554E4 28 03 00 00 */ cmplwi r3, 0 /* 80058588 000554E8 41 82 00 08 */ beq lbl_80058590 /* 8005858C 000554EC 48 2B D3 A5 */ bl Free__7CMemoryFPCv lbl_80058590: /* 80058590 000554F0 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058594 000554F4 48 2E 66 F1 */ bl ReadLong__12CInputStreamFv /* 80058598 000554F8 7C 7C 1B 78 */ mr r28, r3 /* 8005859C 000554FC 38 61 00 F8 */ addi r3, r1, 0xf8 /* 800585A0 00055500 48 2E 66 E5 */ bl ReadLong__12CInputStreamFv /* 800585A4 00055504 7F 84 E3 78 */ mr r4, r28 /* 800585A8 00055508 38 7F 00 14 */ addi r3, r31, 0x14 /* 800585AC 0005550C 48 00 12 C1 */ bl sub_8005986c /* 800585B0 00055510 3C 60 80 3D */ lis r3, lbl_803CCF70@ha /* 800585B4 00055514 3B 60 00 00 */ li r27, 0 /* 800585B8 00055518 3B A3 CF 70 */ addi r29, r3, lbl_803CCF70@l /* 800585BC 0005551C 48 00 00 D4 */ b lbl_80058690 lbl_800585C0: /* 800585C0 00055520 38 9D 00 01 */ addi r4, r29, 1 /* 800585C4 00055524 38 60 01 3C */ li r3, 0x13c /* 800585C8 00055528 38 A0 00 00 */ li r5, 0 /* 800585CC 0005552C 48 2B D2 A1 */ bl __nw__FUlPCcPCc /* 800585D0 00055530 7C 64 1B 79 */ or. r4, r3, r3 /* 800585D4 00055534 41 82 00 18 */ beq lbl_800585EC /* 800585D8 00055538 7F 65 DB 78 */ mr r5, r27 /* 800585DC 0005553C 7F C6 F3 78 */ mr r6, r30 /* 800585E0 00055540 38 81 00 F8 */ addi r4, r1, 0xf8 /* 800585E4 00055544 48 00 AC 81 */ bl __ct__9CGameAreaFR12CInputStreami /* 800585E8 00055548 7C 64 1B 78 */ mr r4, r3 lbl_800585EC: /* 800585EC 0005554C 7C 64 00 D0 */ neg r3, r4 /* 800585F0 00055550 80 1F 00 18 */ lwz r0, 0x18(r31) /* 800585F4 00055554 80 BF 00 1C */ lwz r5, 0x1c(r31) /* 800585F8 00055558 7C 63 23 78 */ or r3, r3, r4 /* 800585FC 0005555C 54 63 0F FE */ srwi r3, r3, 0x1f /* 80058600 00055560 90 81 00 54 */ stw r4, 0x54(r1) /* 80058604 00055564 7C 00 28 00 */ cmpw r0, r5 /* 80058608 00055568 98 61 00 50 */ stb r3, 0x50(r1) /* 8005860C 0005556C 41 80 00 1C */ blt lbl_80058628 /* 80058610 00055570 2C 05 00 00 */ cmpwi r5, 0 /* 80058614 00055574 38 7F 00 14 */ addi r3, r31, 0x14 /* 80058618 00055578 38 80 00 04 */ li r4, 4 /* 8005861C 0005557C 41 82 00 08 */ beq lbl_80058624 /* 80058620 00055580 54 A4 08 3C */ slwi r4, r5, 1 lbl_80058624: /* 80058624 00055584 48 00 12 49 */ bl sub_8005986c lbl_80058628: /* 80058628 00055588 80 1F 00 18 */ lwz r0, 0x18(r31) /* 8005862C 0005558C 80 7F 00 20 */ lwz r3, 0x20(r31) /* 80058630 00055590 54 00 18 38 */ slwi r0, r0, 3 /* 80058634 00055594 7C A3 02 15 */ add. r5, r3, r0 /* 80058638 00055598 41 82 00 1C */ beq lbl_80058654 /* 8005863C 0005559C 88 81 00 50 */ lbz r4, 0x50(r1) /* 80058640 000555A0 38 00 00 00 */ li r0, 0 /* 80058644 000555A4 80 61 00 54 */ lwz r3, 0x54(r1) /* 80058648 000555A8 98 85 00 00 */ stb r4, 0(r5) /* 8005864C 000555AC 90 65 00 04 */ stw r3, 4(r5) /* 80058650 000555B0 98 01 00 50 */ stb r0, 0x50(r1) lbl_80058654: /* 80058654 000555B4 80 7F 00 18 */ lwz r3, 0x18(r31) /* 80058658 000555B8 88 01 00 50 */ lbz r0, 0x50(r1) /* 8005865C 000555BC 38 63 00 01 */ addi r3, r3, 1 /* 80058660 000555C0 28 00 00 00 */ cmplwi r0, 0 /* 80058664 000555C4 90 7F 00 18 */ stw r3, 0x18(r31) /* 80058668 000555C8 41 82 00 24 */ beq lbl_8005868C /* 8005866C 000555CC 80 61 00 54 */ lwz r3, 0x54(r1) /* 80058670 000555D0 28 03 00 00 */ cmplwi r3, 0 /* 80058674 000555D4 41 82 00 18 */ beq lbl_8005868C /* 80058678 000555D8 81 83 00 00 */ lwz r12, 0(r3) /* 8005867C 000555DC 38 80 00 01 */ li r4, 1 /* 80058680 000555E0 81 8C 00 08 */ lwz r12, 8(r12) /* 80058684 000555E4 7D 89 03 A6 */ mtctr r12 /* 80058688 000555E8 4E 80 04 21 */ bctrl lbl_8005868C: /* 8005868C 000555EC 3B 7B 00 01 */ addi r27, r27, 1 lbl_80058690: /* 80058690 000555F0 7C 1B E0 00 */ cmpw r27, r28 /* 80058694 000555F4 41 80 FF 2C */ blt lbl_800585C0 /* 80058698 000555F8 80 7F 00 48 */ lwz r3, 0x48(r31) /* 8005869C 000555FC 2C 03 00 05 */ cmpwi r3, 5 /* 800586A0 00055600 40 80 00 40 */ bge lbl_800586E0 /* 800586A4 00055604 54 60 10 3A */ slwi r0, r3, 2 /* 800586A8 00055608 20 83 00 05 */ subfic r4, r3, 5 /* 800586AC 0005560C 7C 7F 02 14 */ add r3, r31, r0 /* 800586B0 00055610 38 00 00 00 */ li r0, 0 /* 800586B4 00055614 7C 89 03 A6 */ mtctr r4 /* 800586B8 00055618 2C 04 00 00 */ cmpwi r4, 0 /* 800586BC 0005561C 38 63 00 4C */ addi r3, r3, 0x4c /* 800586C0 00055620 40 81 00 18 */ ble lbl_800586D8 lbl_800586C4: /* 800586C4 00055624 28 03 00 00 */ cmplwi r3, 0 /* 800586C8 00055628 41 82 00 08 */ beq lbl_800586D0 /* 800586CC 0005562C 90 03 00 00 */ stw r0, 0(r3) lbl_800586D0: /* 800586D0 00055630 38 63 00 04 */ addi r3, r3, 4 /* 800586D4 00055634 42 00 FF F0 */ bdnz lbl_800586C4 lbl_800586D8: /* 800586D8 00055638 38 00 00 05 */ li r0, 5 /* 800586DC 0005563C 90 1F 00 48 */ stw r0, 0x48(r31) lbl_800586E0: /* 800586E0 00055640 3B 60 00 00 */ li r27, 0 /* 800586E4 00055644 3B 20 00 00 */ li r25, 0 /* 800586E8 00055648 48 00 00 24 */ b lbl_8005870C lbl_800586EC: /* 800586EC 0005564C 80 9F 00 20 */ lwz r4, 0x20(r31) /* 800586F0 00055650 38 19 00 04 */ addi r0, r25, 4 /* 800586F4 00055654 7F E3 FB 78 */ mr r3, r31 /* 800586F8 00055658 38 A0 00 01 */ li r5, 1 /* 800586FC 0005565C 7C 84 00 2E */ lwzx r4, r4, r0 /* 80058700 00055660 4B FF F4 35 */ bl MoveToChain__6CWorldFP9CGameAreaQ26CWorld6EChain /* 80058704 00055664 3B 39 00 08 */ addi r25, r25, 8 /* 80058708 00055668 3B 7B 00 01 */ addi r27, r27, 1 lbl_8005870C: /* 8005870C 0005566C 7C 1B E0 00 */ cmpw r27, r28 /* 80058710 00055670 41 80 FF DC */ blt lbl_800586EC /* 80058714 00055674 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058718 00055678 48 2E 65 6D */ bl ReadLong__12CInputStreamFv /* 8005871C 0005567C 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80058720 00055680 90 7F 00 24 */ stw r3, 0x24(r31) /* 80058724 00055684 38 64 CF 70 */ addi r3, r4, lbl_803CCF70@l /* 80058728 00055688 3B 20 00 00 */ li r25, 0 /* 8005872C 0005568C 38 83 00 01 */ addi r4, r3, 1 /* 80058730 00055690 38 60 00 0C */ li r3, 0xc /* 80058734 00055694 38 A0 00 00 */ li r5, 0 /* 80058738 00055698 48 2B D1 35 */ bl __nw__FUlPCcPCc /* 8005873C 0005569C 7C 7B 1B 79 */ or. r27, r3, r3 /* 80058740 000556A0 41 82 00 4C */ beq lbl_8005878C /* 80058744 000556A4 80 DF 00 24 */ lwz r6, 0x24(r31) /* 80058748 000556A8 3C 60 4D 41 */ lis r3, 0x4D415057@ha /* 8005874C 000556AC 38 03 50 57 */ addi r0, r3, 0x4D415057@l /* 80058750 000556B0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80058754 000556B4 90 01 00 48 */ stw r0, 0x48(r1) /* 80058758 000556B8 38 61 00 40 */ addi r3, r1, 0x40 /* 8005875C 000556BC 38 A1 00 48 */ addi r5, r1, 0x48 /* 80058760 000556C0 90 C1 00 4C */ stw r6, 0x4c(r1) /* 80058764 000556C4 81 84 00 00 */ lwz r12, 0(r4) /* 80058768 000556C8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8005876C 000556CC 7D 89 03 A6 */ mtctr r12 /* 80058770 000556D0 4E 80 04 21 */ bctrl /* 80058774 000556D4 7F 63 DB 78 */ mr r3, r27 /* 80058778 000556D8 38 81 00 40 */ addi r4, r1, 0x40 /* 8005877C 000556DC 3B 20 00 01 */ li r25, 1 /* 80058780 000556E0 48 2E 87 29 */ bl __ct__6CTokenFRC6CToken /* 80058784 000556E4 38 00 00 00 */ li r0, 0 /* 80058788 000556E8 90 1B 00 08 */ stw r0, 8(r27) lbl_8005878C: /* 8005878C 000556EC 83 9F 00 28 */ lwz r28, 0x28(r31) /* 80058790 000556F0 28 1C 00 00 */ cmplwi r28, 0 /* 80058794 000556F4 41 82 00 1C */ beq lbl_800587B0 /* 80058798 000556F8 41 82 00 10 */ beq lbl_800587A8 /* 8005879C 000556FC 7F 83 E3 78 */ mr r3, r28 /* 800587A0 00055700 38 80 00 00 */ li r4, 0 /* 800587A4 00055704 48 2E 86 9D */ bl __dt__6CTokenFv lbl_800587A8: /* 800587A8 00055708 7F 83 E3 78 */ mr r3, r28 /* 800587AC 0005570C 48 2B D1 85 */ bl Free__7CMemoryFPCv lbl_800587B0: /* 800587B0 00055710 7F 20 07 75 */ extsb. r0, r25 /* 800587B4 00055714 93 7F 00 28 */ stw r27, 0x28(r31) /* 800587B8 00055718 41 82 00 10 */ beq lbl_800587C8 /* 800587BC 0005571C 38 61 00 40 */ addi r3, r1, 0x40 /* 800587C0 00055720 38 80 FF FF */ li r4, -1 /* 800587C4 00055724 48 2E 86 7D */ bl __dt__6CTokenFv lbl_800587C8: /* 800587C8 00055728 80 7F 00 28 */ lwz r3, 0x28(r31) /* 800587CC 0005572C 48 2E 85 B9 */ bl Lock__6CTokenFv /* 800587D0 00055730 28 1A 00 00 */ cmplwi r26, 0 /* 800587D4 00055734 41 82 00 7C */ beq lbl_80058850 /* 800587D8 00055738 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 800587DC 0005573C 38 E0 00 00 */ li r7, 0 /* 800587E0 00055740 90 E1 00 C4 */ stw r7, 0xc4(r1) /* 800587E4 00055744 7F 43 D3 78 */ mr r3, r26 /* 800587E8 00055748 38 81 00 34 */ addi r4, r1, 0x34 /* 800587EC 0005574C 38 A1 00 F8 */ addi r5, r1, 0xf8 /* 800587F0 00055750 90 E1 00 C8 */ stw r7, 0xc8(r1) /* 800587F4 00055754 38 C1 00 C0 */ addi r6, r1, 0xc0 /* 800587F8 00055758 90 E1 00 CC */ stw r7, 0xcc(r1) /* 800587FC 0005575C 90 01 00 34 */ stw r0, 0x34(r1) /* 80058800 00055760 4B FE F9 75 */ bl LoadScriptObjects__13CStateManagerF7TAreaIdR12CInputStreamQ213CStateManager18EScriptPersistence /* 80058804 00055764 7F 43 D3 78 */ mr r3, r26 /* 80058808 00055768 38 81 00 C0 */ addi r4, r1, 0xc0 /* 8005880C 0005576C 4B FE F8 A5 */ bl "InitScriptObjects__13CStateManagerFRCQ24rstl18vector<9TEditorId>" /* 80058810 00055770 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 80058814 00055774 80 61 00 CC */ lwz r3, 0xcc(r1) /* 80058818 00055778 54 00 10 3A */ slwi r0, r0, 2 /* 8005881C 0005577C 7C 03 02 14 */ add r0, r3, r0 /* 80058820 00055780 90 61 00 18 */ stw r3, 0x18(r1) /* 80058824 00055784 7C 64 1B 78 */ mr r4, r3 /* 80058828 00055788 90 01 00 20 */ stw r0, 0x20(r1) /* 8005882C 0005578C 90 01 00 1C */ stw r0, 0x1c(r1) /* 80058830 00055790 90 61 00 14 */ stw r3, 0x14(r1) /* 80058834 00055794 48 00 00 08 */ b lbl_8005883C lbl_80058838: /* 80058838 00055798 38 84 00 04 */ addi r4, r4, 4 lbl_8005883C: /* 8005883C 0005579C 7C 04 00 40 */ cmplw r4, r0 /* 80058840 000557A0 40 82 FF F8 */ bne lbl_80058838 /* 80058844 000557A4 28 03 00 00 */ cmplwi r3, 0 /* 80058848 000557A8 41 82 00 08 */ beq lbl_80058850 /* 8005884C 000557AC 48 2B D0 E5 */ bl Free__7CMemoryFPCv lbl_80058850: /* 80058850 000557B0 28 1E 00 0A */ cmplwi r30, 0xa /* 80058854 000557B4 40 81 01 28 */ ble lbl_8005897C /* 80058858 000557B8 38 61 00 F8 */ addi r3, r1, 0xf8 /* 8005885C 000557BC 48 2E 64 29 */ bl ReadLong__12CInputStreamFv /* 80058860 000557C0 7C 7C 1B 78 */ mr r28, r3 /* 80058864 000557C4 38 7F 00 74 */ addi r3, r31, 0x74 /* 80058868 000557C8 7F 84 E3 78 */ mr r4, r28 /* 8005886C 000557CC 48 00 0E 9D */ bl "reserve__Q24rstl61vectorFi" /* 80058870 000557D0 3B A1 00 DC */ addi r29, r1, 0xdc /* 80058874 000557D4 3B 61 00 EC */ addi r27, r1, 0xec /* 80058878 000557D8 3B 40 00 00 */ li r26, 0 /* 8005887C 000557DC 48 00 00 F4 */ b lbl_80058970 lbl_80058880: /* 80058880 000557E0 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058884 000557E4 48 2E 64 01 */ bl ReadLong__12CInputStreamFv /* 80058888 000557E8 7C 79 1B 78 */ mr r25, r3 /* 8005888C 000557EC 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058890 000557F0 48 2E 63 F5 */ bl ReadLong__12CInputStreamFv /* 80058894 000557F4 7C 65 1B 78 */ mr r5, r3 /* 80058898 000557F8 7F 24 CB 78 */ mr r4, r25 /* 8005889C 000557FC 38 61 00 D0 */ addi r3, r1, 0xd0 /* 800588A0 00055800 48 00 07 DD */ bl __ct__Q26CWorld15CSoundGroupDataFiUi /* 800588A4 00055804 80 1F 00 78 */ lwz r0, 0x78(r31) /* 800588A8 00055808 80 BF 00 7C */ lwz r5, 0x7c(r31) /* 800588AC 0005580C 7C 00 28 00 */ cmpw r0, r5 /* 800588B0 00055810 41 80 00 1C */ blt lbl_800588CC /* 800588B4 00055814 2C 05 00 00 */ cmpwi r5, 0 /* 800588B8 00055818 38 7F 00 74 */ addi r3, r31, 0x74 /* 800588BC 0005581C 38 80 00 04 */ li r4, 4 /* 800588C0 00055820 41 82 00 08 */ beq lbl_800588C8 /* 800588C4 00055824 54 A4 08 3C */ slwi r4, r5, 1 lbl_800588C8: /* 800588C8 00055828 48 00 0E 41 */ bl "reserve__Q24rstl61vectorFi" lbl_800588CC: /* 800588CC 0005582C 80 1F 00 78 */ lwz r0, 0x78(r31) /* 800588D0 00055830 80 7F 00 80 */ lwz r3, 0x80(r31) /* 800588D4 00055834 1C 00 00 28 */ mulli r0, r0, 0x28 /* 800588D8 00055838 7F 23 02 15 */ add. r25, r3, r0 /* 800588DC 0005583C 41 82 00 4C */ beq lbl_80058928 /* 800588E0 00055840 80 01 00 D0 */ lwz r0, 0xd0(r1) /* 800588E4 00055844 7F A4 EB 78 */ mr r4, r29 /* 800588E8 00055848 38 79 00 0C */ addi r3, r25, 0xc /* 800588EC 0005584C 90 19 00 00 */ stw r0, 0(r25) /* 800588F0 00055850 80 01 00 D4 */ lwz r0, 0xd4(r1) /* 800588F4 00055854 90 19 00 04 */ stw r0, 4(r25) /* 800588F8 00055858 88 01 00 D8 */ lbz r0, 0xd8(r1) /* 800588FC 0005585C 98 19 00 08 */ stb r0, 8(r25) /* 80058900 00055860 48 2E 58 61 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80058904 00055864 88 01 00 F4 */ lbz r0, 0xf4(r1) /* 80058908 00055868 98 19 00 24 */ stb r0, 0x24(r25) /* 8005890C 0005586C 88 01 00 F4 */ lbz r0, 0xf4(r1) /* 80058910 00055870 28 00 00 00 */ cmplwi r0, 0 /* 80058914 00055874 41 82 00 14 */ beq lbl_80058928 /* 80058918 00055878 34 79 00 1C */ addic. r3, r25, 0x1c /* 8005891C 0005587C 41 82 00 0C */ beq lbl_80058928 /* 80058920 00055880 7F 64 DB 78 */ mr r4, r27 /* 80058924 00055884 48 2E 85 85 */ bl __ct__6CTokenFRC6CToken lbl_80058928: /* 80058928 00055888 80 7F 00 78 */ lwz r3, 0x78(r31) /* 8005892C 0005588C 28 1B 00 00 */ cmplwi r27, 0 /* 80058930 00055890 38 03 00 01 */ addi r0, r3, 1 /* 80058934 00055894 90 1F 00 78 */ stw r0, 0x78(r31) /* 80058938 00055898 41 82 00 24 */ beq lbl_8005895C /* 8005893C 0005589C 88 01 00 F4 */ lbz r0, 0xf4(r1) /* 80058940 000558A0 28 00 00 00 */ cmplwi r0, 0 /* 80058944 000558A4 41 82 00 10 */ beq lbl_80058954 /* 80058948 000558A8 7F 63 DB 78 */ mr r3, r27 /* 8005894C 000558AC 38 80 FF FF */ li r4, -1 /* 80058950 000558B0 48 2E 84 F1 */ bl __dt__6CTokenFv lbl_80058954: /* 80058954 000558B4 38 00 00 00 */ li r0, 0 /* 80058958 000558B8 98 01 00 F4 */ stb r0, 0xf4(r1) lbl_8005895C: /* 8005895C 000558BC 28 1D 00 00 */ cmplwi r29, 0 /* 80058960 000558C0 41 82 00 0C */ beq lbl_8005896C /* 80058964 000558C4 7F A3 EB 78 */ mr r3, r29 /* 80058968 000558C8 48 2E 51 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8005896C: /* 8005896C 000558CC 3B 5A 00 01 */ addi r26, r26, 1 lbl_80058970: /* 80058970 000558D0 7C 1A E0 00 */ cmpw r26, r28 /* 80058974 000558D4 41 80 FF 0C */ blt lbl_80058880 /* 80058978 000558D8 48 2F 1E 9D */ bl GetVerbose__9CAudioSysFv lbl_8005897C: /* 8005897C 000558DC 28 1E 00 0C */ cmplwi r30, 0xc /* 80058980 000558E0 40 81 00 C8 */ ble lbl_80058A48 /* 80058984 000558E4 38 61 00 84 */ addi r3, r1, 0x84 /* 80058988 000558E8 38 81 00 F8 */ addi r4, r1, 0xf8 /* 8005898C 000558EC 38 A1 00 0C */ addi r5, r1, 0xc /* 80058990 000558F0 48 2E 59 69 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" /* 80058994 000558F4 38 7F 00 84 */ addi r3, r31, 0x84 /* 80058998 000558F8 38 81 00 84 */ addi r4, r1, 0x84 /* 8005899C 000558FC 48 2E 53 C1 */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800589A0 00055900 38 61 00 84 */ addi r3, r1, 0x84 /* 800589A4 00055904 48 2E 51 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800589A8 00055908 80 9F 00 08 */ lwz r4, 8(r31) /* 800589AC 0005590C 38 61 00 74 */ addi r3, r1, 0x74 /* 800589B0 00055910 48 1C 42 3D */ bl sub_8021cbec /* 800589B4 00055914 38 61 00 B0 */ addi r3, r1, 0xb0 /* 800589B8 00055918 38 81 00 74 */ addi r4, r1, 0x74 /* 800589BC 0005591C 48 2E 57 A5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800589C0 00055920 38 61 00 74 */ addi r3, r1, 0x74 /* 800589C4 00055924 48 2E 51 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800589C8 00055928 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) /* 800589CC 0005592C 38 81 00 B0 */ addi r4, r1, 0xb0 /* 800589D0 00055930 3B 20 00 7F */ li r25, 0x7f /* 800589D4 00055934 48 1C 46 1D */ bl "HasTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800589D8 00055938 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800589DC 0005593C 41 82 00 40 */ beq lbl_80058A1C /* 800589E0 00055940 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) /* 800589E4 00055944 38 81 00 B0 */ addi r4, r1, 0xb0 /* 800589E8 00055948 48 1C 42 BD */ bl "GetTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800589EC 0005594C 7C 64 1B 78 */ mr r4, r3 /* 800589F0 00055950 38 7F 00 84 */ addi r3, r31, 0x84 /* 800589F4 00055954 38 84 00 30 */ addi r4, r4, 0x30 /* 800589F8 00055958 48 2E 53 65 */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800589FC 0005595C 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) /* 80058A00 00055960 38 81 00 B0 */ addi r4, r1, 0xb0 /* 80058A04 00055964 48 1C 42 A1 */ bl "GetTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80058A08 00055968 C0 22 86 9C */ lfs f1, lbl_805AA3BC@sda21(r2) /* 80058A0C 0005596C C0 03 00 2C */ lfs f0, 0x2c(r3) /* 80058A10 00055970 EF E1 00 32 */ fmuls f31, f1, f0 /* 80058A14 00055974 F3 E1 C0 08 */ psq_st f31, 8(r1), 1, qr4 /* 80058A18 00055978 8B 21 00 08 */ lbz r25, 8(r1) lbl_80058A1C: /* 80058A1C 0005597C 38 7F 00 84 */ addi r3, r31, 0x84 /* 80058A20 00055980 48 1B 3C 51 */ bl "IsDSPFile__20CScriptStreamedMusicFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80058A24 00055984 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80058A28 00055988 40 82 00 18 */ bne lbl_80058A40 /* 80058A2C 0005598C C0 22 86 A0 */ lfs f1, lbl_805AA3C0@sda21(r2) /* 80058A30 00055990 38 7F 00 84 */ addi r3, r31, 0x84 /* 80058A34 00055994 57 24 06 3E */ clrlwi r4, r25, 0x18 /* 80058A38 00055998 FC 40 08 90 */ fmr f2, f1 /* 80058A3C 0005599C 48 30 D1 7D */ bl "SetDefaultAudio__19CStreamAudioManagerFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffUc" lbl_80058A40: /* 80058A40 000559A0 38 61 00 B0 */ addi r3, r1, 0xb0 /* 80058A44 000559A4 48 2E 50 9D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80058A48: /* 80058A48 000559A8 80 BF 00 08 */ lwz r5, 8(r31) /* 80058A4C 000559AC 7F C4 F3 78 */ mr r4, r30 /* 80058A50 000559B0 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058A54 000559B4 48 00 07 C9 */ bl ReadWorldLayers__12CWorldLayersFR12CInputStream /* 80058A58 000559B8 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 80058A5C 000559BC 28 03 00 00 */ cmplwi r3, 0 /* 80058A60 000559C0 41 82 00 18 */ beq lbl_80058A78 /* 80058A64 000559C4 81 83 00 00 */ lwz r12, 0(r3) /* 80058A68 000559C8 38 80 00 01 */ li r4, 1 /* 80058A6C 000559CC 81 8C 00 08 */ lwz r12, 8(r12) /* 80058A70 000559D0 7D 89 03 A6 */ mtctr r12 /* 80058A74 000559D4 4E 80 04 21 */ bctrl lbl_80058A78: /* 80058A78 000559D8 38 00 00 00 */ li r0, 0 /* 80058A7C 000559DC 90 1F 00 3C */ stw r0, 0x3c(r31) /* 80058A80 000559E0 80 7F 00 40 */ lwz r3, 0x40(r31) /* 80058A84 000559E4 48 2B CE AD */ bl Free__7CMemoryFPCv /* 80058A88 000559E8 38 80 00 00 */ li r4, 0 /* 80058A8C 000559EC 3C 60 80 3F */ lis r3, __vt__15CMemoryInStream@ha /* 80058A90 000559F0 90 9F 00 40 */ stw r4, 0x40(r31) /* 80058A94 000559F4 38 A0 00 01 */ li r5, 1 /* 80058A98 000559F8 38 03 E3 98 */ addi r0, r3, __vt__15CMemoryInStream@l /* 80058A9C 000559FC 38 61 00 F8 */ addi r3, r1, 0xf8 /* 80058AA0 00055A00 90 9F 00 44 */ stw r4, 0x44(r31) /* 80058AA4 00055A04 38 80 00 00 */ li r4, 0 /* 80058AA8 00055A08 90 BF 00 04 */ stw r5, 4(r31) /* 80058AAC 00055A0C 90 01 00 F8 */ stw r0, 0xf8(r1) /* 80058AB0 00055A10 48 2E 65 FD */ bl __dt__12CInputStreamFv lbl_80058AB4: /* 80058AB4 00055A14 83 5F 00 28 */ lwz r26, 0x28(r31) /* 80058AB8 00055A18 80 1A 00 08 */ lwz r0, 8(r26) /* 80058ABC 00055A1C 28 00 00 00 */ cmplwi r0, 0 /* 80058AC0 00055A20 41 82 00 0C */ beq lbl_80058ACC /* 80058AC4 00055A24 38 60 00 01 */ li r3, 1 /* 80058AC8 00055A28 48 00 00 3C */ b lbl_80058B04 lbl_80058ACC: /* 80058ACC 00055A2C 88 1A 00 04 */ lbz r0, 4(r26) /* 80058AD0 00055A30 28 00 00 00 */ cmplwi r0, 0 /* 80058AD4 00055A34 41 82 00 2C */ beq lbl_80058B00 /* 80058AD8 00055A38 80 7A 00 00 */ lwz r3, 0(r26) /* 80058ADC 00055A3C 80 03 00 10 */ lwz r0, 0x10(r3) /* 80058AE0 00055A40 28 00 00 00 */ cmplwi r0, 0 /* 80058AE4 00055A44 41 82 00 1C */ beq lbl_80058B00 /* 80058AE8 00055A48 7F 43 D3 78 */ mr r3, r26 /* 80058AEC 00055A4C 48 2E 83 21 */ bl GetObj__6CTokenFv /* 80058AF0 00055A50 80 03 00 04 */ lwz r0, 4(r3) /* 80058AF4 00055A54 38 60 00 01 */ li r3, 1 /* 80058AF8 00055A58 90 1A 00 08 */ stw r0, 8(r26) /* 80058AFC 00055A5C 48 00 00 08 */ b lbl_80058B04 lbl_80058B00: /* 80058B00 00055A60 38 60 00 00 */ li r3, 0 lbl_80058B04: /* 80058B04 00055A64 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80058B08 00055A68 40 82 00 0C */ bne lbl_80058B14 /* 80058B0C 00055A6C 38 60 00 00 */ li r3, 0 /* 80058B10 00055A70 48 00 02 84 */ b lbl_80058D94 lbl_80058B14: /* 80058B14 00055A74 83 3F 00 68 */ lwz r25, 0x68(r31) /* 80058B18 00055A78 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 80058B1C 00055A7C 7C 19 00 00 */ cmpw r25, r0 /* 80058B20 00055A80 40 82 00 20 */ bne lbl_80058B40 /* 80058B24 00055A84 7F E3 FB 78 */ mr r3, r31 /* 80058B28 00055A88 4B FF EB 75 */ bl GetMapWorld__6CWorldCFv /* 80058B2C 00055A8C 7F E4 FB 78 */ mr r4, r31 /* 80058B30 00055A90 38 A0 00 00 */ li r5, 0 /* 80058B34 00055A94 38 C0 27 0F */ li r6, 0x270f /* 80058B38 00055A98 48 04 86 D1 */ bl SetWhichMapAreasLoaded__9CMapWorldFRC6IWorldii /* 80058B3C 00055A9C 48 00 00 1C */ b lbl_80058B58 lbl_80058B40: /* 80058B40 00055AA0 7F E3 FB 78 */ mr r3, r31 /* 80058B44 00055AA4 4B FF EB 59 */ bl GetMapWorld__6CWorldCFv /* 80058B48 00055AA8 7F E4 FB 78 */ mr r4, r31 /* 80058B4C 00055AAC 7F 25 CB 78 */ mr r5, r25 /* 80058B50 00055AB0 38 C0 00 03 */ li r6, 3 /* 80058B54 00055AB4 48 04 86 B5 */ bl SetWhichMapAreasLoaded__9CMapWorldFRC6IWorldii lbl_80058B58: /* 80058B58 00055AB8 38 00 00 02 */ li r0, 2 /* 80058B5C 00055ABC 90 1F 00 04 */ stw r0, 4(r31) lbl_80058B60: /* 80058B60 00055AC0 80 7F 00 28 */ lwz r3, 0x28(r31) /* 80058B64 00055AC4 80 63 00 08 */ lwz r3, 8(r3) /* 80058B68 00055AC8 48 04 86 19 */ bl IsMapAreasStreaming__9CMapWorldCFv /* 80058B6C 00055ACC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80058B70 00055AD0 41 82 00 0C */ beq lbl_80058B7C /* 80058B74 00055AD4 38 60 00 00 */ li r3, 0 /* 80058B78 00055AD8 48 00 02 1C */ b lbl_80058D94 lbl_80058B7C: /* 80058B7C 00055ADC 38 00 00 03 */ li r0, 3 /* 80058B80 00055AE0 90 1F 00 04 */ stw r0, 4(r31) lbl_80058B84: /* 80058B84 00055AE4 88 1F 00 70 */ lbz r0, 0x70(r31) /* 80058B88 00055AE8 38 80 00 01 */ li r4, 1 /* 80058B8C 00055AEC 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 80058B90 00055AF0 38 60 00 00 */ li r3, 0 /* 80058B94 00055AF4 98 1F 00 70 */ stb r0, 0x70(r31) /* 80058B98 00055AF8 88 1F 00 70 */ lbz r0, 0x70(r31) /* 80058B9C 00055AFC 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 80058BA0 00055B00 98 1F 00 70 */ stb r0, 0x70(r31) /* 80058BA4 00055B04 88 1F 00 A0 */ lbz r0, 0xa0(r31) /* 80058BA8 00055B08 28 00 00 00 */ cmplwi r0, 0 /* 80058BAC 00055B0C 41 82 01 0C */ beq lbl_80058CB8 /* 80058BB0 00055B10 3B 3F 00 94 */ addi r25, r31, 0x94 /* 80058BB4 00055B14 80 1F 00 9C */ lwz r0, 0x9c(r31) /* 80058BB8 00055B18 28 00 00 00 */ cmplwi r0, 0 /* 80058BBC 00055B1C 41 82 00 08 */ beq lbl_80058BC4 /* 80058BC0 00055B20 48 00 00 3C */ b lbl_80058BFC lbl_80058BC4: /* 80058BC4 00055B24 88 19 00 04 */ lbz r0, 4(r25) /* 80058BC8 00055B28 28 00 00 00 */ cmplwi r0, 0 /* 80058BCC 00055B2C 41 82 00 2C */ beq lbl_80058BF8 /* 80058BD0 00055B30 80 79 00 00 */ lwz r3, 0(r25) /* 80058BD4 00055B34 80 03 00 10 */ lwz r0, 0x10(r3) /* 80058BD8 00055B38 28 00 00 00 */ cmplwi r0, 0 /* 80058BDC 00055B3C 41 82 00 1C */ beq lbl_80058BF8 /* 80058BE0 00055B40 7F 23 CB 78 */ mr r3, r25 /* 80058BE4 00055B44 48 2E 82 29 */ bl GetObj__6CTokenFv /* 80058BE8 00055B48 80 03 00 04 */ lwz r0, 4(r3) /* 80058BEC 00055B4C 38 80 00 01 */ li r4, 1 /* 80058BF0 00055B50 90 19 00 08 */ stw r0, 8(r25) /* 80058BF4 00055B54 48 00 00 08 */ b lbl_80058BFC lbl_80058BF8: /* 80058BF8 00055B58 38 80 00 00 */ li r4, 0 lbl_80058BFC: /* 80058BFC 00055B5C 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80058C00 00055B60 40 82 00 0C */ bne lbl_80058C0C /* 80058C04 00055B64 38 60 00 00 */ li r3, 0 /* 80058C08 00055B68 48 00 01 8C */ b lbl_80058D94 lbl_80058C0C: /* 80058C0C 00055B6C 83 3F 00 9C */ lwz r25, 0x9c(r31) /* 80058C10 00055B70 38 80 00 00 */ li r4, 0 /* 80058C14 00055B74 7F 23 CB 78 */ mr r3, r25 /* 80058C18 00055B78 48 2F CA 1D */ bl Touch__6CModelCFi /* 80058C1C 00055B7C 7F 23 CB 78 */ mr r3, r25 /* 80058C20 00055B80 38 80 00 00 */ li r4, 0 /* 80058C24 00055B84 48 2F C9 85 */ bl IsLoaded__6CModelCFi /* 80058C28 00055B88 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80058C2C 00055B8C 40 82 00 0C */ bne lbl_80058C38 /* 80058C30 00055B90 38 60 00 00 */ li r3, 0 /* 80058C34 00055B94 48 00 01 60 */ b lbl_80058D94 lbl_80058C38: /* 80058C38 00055B98 3B 21 00 68 */ addi r25, r1, 0x68 /* 80058C3C 00055B9C 38 9F 00 94 */ addi r4, r31, 0x94 /* 80058C40 00055BA0 7F 23 CB 78 */ mr r3, r25 /* 80058C44 00055BA4 48 2E 82 65 */ bl __ct__6CTokenFRC6CToken /* 80058C48 00055BA8 7F 23 CB 78 */ mr r3, r25 /* 80058C4C 00055BAC 48 2E 81 C1 */ bl GetObj__6CTokenFv /* 80058C50 00055BB0 80 03 00 04 */ lwz r0, 4(r3) /* 80058C54 00055BB4 90 01 00 70 */ stw r0, 0x70(r1) /* 80058C58 00055BB8 88 1F 00 B0 */ lbz r0, 0xb0(r31) /* 80058C5C 00055BBC 28 00 00 00 */ cmplwi r0, 0 /* 80058C60 00055BC0 40 82 00 34 */ bne lbl_80058C94 /* 80058C64 00055BC4 37 3F 00 A4 */ addic. r25, r31, 0xa4 /* 80058C68 00055BC8 41 82 00 20 */ beq lbl_80058C88 /* 80058C6C 00055BCC 7F 23 CB 78 */ mr r3, r25 /* 80058C70 00055BD0 38 81 00 68 */ addi r4, r1, 0x68 /* 80058C74 00055BD4 48 2E 82 35 */ bl __ct__6CTokenFRC6CToken /* 80058C78 00055BD8 80 01 00 70 */ lwz r0, 0x70(r1) /* 80058C7C 00055BDC 7F 23 CB 78 */ mr r3, r25 /* 80058C80 00055BE0 90 19 00 08 */ stw r0, 8(r25) /* 80058C84 00055BE4 48 2E 81 01 */ bl Lock__6CTokenFv lbl_80058C88: /* 80058C88 00055BE8 38 00 00 01 */ li r0, 1 /* 80058C8C 00055BEC 98 1F 00 B0 */ stb r0, 0xb0(r31) /* 80058C90 00055BF0 48 00 00 1C */ b lbl_80058CAC lbl_80058C94: /* 80058C94 00055BF4 3B 3F 00 A4 */ addi r25, r31, 0xa4 /* 80058C98 00055BF8 38 81 00 68 */ addi r4, r1, 0x68 /* 80058C9C 00055BFC 7F 23 CB 78 */ mr r3, r25 /* 80058CA0 00055C00 48 2E 80 25 */ bl __as__6CTokenFRC6CToken /* 80058CA4 00055C04 80 01 00 70 */ lwz r0, 0x70(r1) /* 80058CA8 00055C08 90 19 00 08 */ stw r0, 8(r25) lbl_80058CAC: /* 80058CAC 00055C0C 38 61 00 68 */ addi r3, r1, 0x68 /* 80058CB0 00055C10 38 80 00 00 */ li r4, 0 /* 80058CB4 00055C14 48 2E 81 8D */ bl __dt__6CTokenFv lbl_80058CB8: /* 80058CB8 00055C18 83 3F 00 80 */ lwz r25, 0x80(r31) /* 80058CBC 00055C1C 48 00 00 1C */ b lbl_80058CD8 lbl_80058CC0: /* 80058CC0 00055C20 88 19 00 24 */ lbz r0, 0x24(r25) /* 80058CC4 00055C24 28 00 00 00 */ cmplwi r0, 0 /* 80058CC8 00055C28 41 82 00 0C */ beq lbl_80058CD4 /* 80058CCC 00055C2C 38 79 00 1C */ addi r3, r25, 0x1c /* 80058CD0 00055C30 48 2E 80 B5 */ bl Lock__6CTokenFv lbl_80058CD4: /* 80058CD4 00055C34 3B 39 00 28 */ addi r25, r25, 0x28 lbl_80058CD8: /* 80058CD8 00055C38 80 1F 00 78 */ lwz r0, 0x78(r31) /* 80058CDC 00055C3C 80 7F 00 80 */ lwz r3, 0x80(r31) /* 80058CE0 00055C40 1C 00 00 28 */ mulli r0, r0, 0x28 /* 80058CE4 00055C44 7C 03 02 14 */ add r0, r3, r0 /* 80058CE8 00055C48 7C 19 00 40 */ cmplw r25, r0 /* 80058CEC 00055C4C 40 82 FF D4 */ bne lbl_80058CC0 /* 80058CF0 00055C50 38 00 00 04 */ li r0, 4 /* 80058CF4 00055C54 90 1F 00 04 */ stw r0, 4(r31) lbl_80058CF8: /* 80058CF8 00055C58 83 3F 00 80 */ lwz r25, 0x80(r31) /* 80058CFC 00055C5C 3B 40 00 01 */ li r26, 1 /* 80058D00 00055C60 48 00 00 50 */ b lbl_80058D50 lbl_80058D04: /* 80058D04 00055C64 88 19 00 24 */ lbz r0, 0x24(r25) /* 80058D08 00055C68 28 00 00 00 */ cmplwi r0, 0 /* 80058D0C 00055C6C 41 82 00 40 */ beq lbl_80058D4C /* 80058D10 00055C70 80 79 00 1C */ lwz r3, 0x1c(r25) /* 80058D14 00055C74 80 03 00 10 */ lwz r0, 0x10(r3) /* 80058D18 00055C78 28 00 00 00 */ cmplwi r0, 0 /* 80058D1C 00055C7C 41 82 00 2C */ beq lbl_80058D48 /* 80058D20 00055C80 88 19 00 08 */ lbz r0, 8(r25) /* 80058D24 00055C84 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80058D28 00055C88 40 82 00 24 */ bne lbl_80058D4C /* 80058D2C 00055C8C 80 19 00 00 */ lwz r0, 0(r25) /* 80058D30 00055C90 7F E3 FB 78 */ mr r3, r31 /* 80058D34 00055C94 80 B9 00 04 */ lwz r5, 4(r25) /* 80058D38 00055C98 7F 26 CB 78 */ mr r6, r25 /* 80058D3C 00055C9C 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 80058D40 00055CA0 4B FF E9 ED */ bl LoadSoundGroup__6CWorldFUcUiRQ26CWorld15CSoundGroupData /* 80058D44 00055CA4 48 00 00 08 */ b lbl_80058D4C lbl_80058D48: /* 80058D48 00055CA8 3B 40 00 00 */ li r26, 0 lbl_80058D4C: /* 80058D4C 00055CAC 3B 39 00 28 */ addi r25, r25, 0x28 lbl_80058D50: /* 80058D50 00055CB0 80 1F 00 78 */ lwz r0, 0x78(r31) /* 80058D54 00055CB4 80 7F 00 80 */ lwz r3, 0x80(r31) /* 80058D58 00055CB8 1C 00 00 28 */ mulli r0, r0, 0x28 /* 80058D5C 00055CBC 7C 03 02 14 */ add r0, r3, r0 /* 80058D60 00055CC0 7C 19 00 40 */ cmplw r25, r0 /* 80058D64 00055CC4 40 82 FF A0 */ bne lbl_80058D04 /* 80058D68 00055CC8 57 40 06 3F */ clrlwi. r0, r26, 0x18 /* 80058D6C 00055CCC 40 82 00 0C */ bne lbl_80058D78 /* 80058D70 00055CD0 38 60 00 00 */ li r3, 0 /* 80058D74 00055CD4 48 00 00 20 */ b lbl_80058D94 lbl_80058D78: /* 80058D78 00055CD8 7F E3 FB 78 */ mr r3, r31 /* 80058D7C 00055CDC 4B FF EA 8D */ bl LoadSoundGroups__6CWorldFv /* 80058D80 00055CE0 38 00 00 05 */ li r0, 5 /* 80058D84 00055CE4 90 1F 00 04 */ stw r0, 4(r31) lbl_80058D88: /* 80058D88 00055CE8 38 60 00 01 */ li r3, 1 /* 80058D8C 00055CEC 48 00 00 08 */ b lbl_80058D94 lbl_80058D90: /* 80058D90 00055CF0 38 60 00 00 */ li r3, 0 lbl_80058D94: /* 80058D94 00055CF4 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 /* 80058D98 00055CF8 CB E1 01 40 */ lfd f31, 0x140(r1) /* 80058D9C 00055CFC BB 21 01 24 */ lmw r25, 0x124(r1) /* 80058DA0 00055D00 80 01 01 54 */ lwz r0, 0x154(r1) /* 80058DA4 00055D04 7C 08 03 A6 */ mtlr r0 /* 80058DA8 00055D08 38 21 01 50 */ addi r1, r1, 0x150 /* 80058DAC 00055D0C 4E 80 00 20 */ blr .global sub_80058db0 sub_80058db0: /* 80058DB0 00055D10 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80058DB4 00055D14 7C 08 02 A6 */ mflr r0 /* 80058DB8 00055D18 90 01 00 24 */ stw r0, 0x24(r1) /* 80058DBC 00055D1C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80058DC0 00055D20 7C 9F 23 78 */ mr r31, r4 /* 80058DC4 00055D24 93 C1 00 18 */ stw r30, 0x18(r1) /* 80058DC8 00055D28 7C 7E 1B 78 */ mr r30, r3 /* 80058DCC 00055D2C 7C 1E F8 40 */ cmplw r30, r31 /* 80058DD0 00055D30 40 82 00 08 */ bne lbl_80058DD8 /* 80058DD4 00055D34 48 00 00 D0 */ b lbl_80058EA4 lbl_80058DD8: /* 80058DD8 00055D38 80 1E 00 04 */ lwz r0, 4(r30) /* 80058DDC 00055D3C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80058DE0 00055D40 1C 00 00 0C */ mulli r0, r0, 0xc /* 80058DE4 00055D44 90 61 00 0C */ stw r3, 0xc(r1) /* 80058DE8 00055D48 7C 03 02 14 */ add r0, r3, r0 /* 80058DEC 00055D4C 90 61 00 08 */ stw r3, 8(r1) /* 80058DF0 00055D50 90 01 00 14 */ stw r0, 0x14(r1) /* 80058DF4 00055D54 90 01 00 10 */ stw r0, 0x10(r1) /* 80058DF8 00055D58 48 00 00 08 */ b lbl_80058E00 lbl_80058DFC: /* 80058DFC 00055D5C 38 63 00 0C */ addi r3, r3, 0xc lbl_80058E00: /* 80058E00 00055D60 7C 03 00 40 */ cmplw r3, r0 /* 80058E04 00055D64 40 82 FF F8 */ bne lbl_80058DFC /* 80058E08 00055D68 38 00 00 00 */ li r0, 0 /* 80058E0C 00055D6C 90 1E 00 04 */ stw r0, 4(r30) /* 80058E10 00055D70 80 9F 00 04 */ lwz r4, 4(r31) /* 80058E14 00055D74 2C 04 00 00 */ cmpwi r4, 0 /* 80058E18 00055D78 40 82 00 28 */ bne lbl_80058E40 /* 80058E1C 00055D7C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80058E20 00055D80 28 03 00 00 */ cmplwi r3, 0 /* 80058E24 00055D84 41 82 00 08 */ beq lbl_80058E2C /* 80058E28 00055D88 48 2B CB 09 */ bl Free__7CMemoryFPCv lbl_80058E2C: /* 80058E2C 00055D8C 38 00 00 00 */ li r0, 0 /* 80058E30 00055D90 90 1E 00 04 */ stw r0, 4(r30) /* 80058E34 00055D94 90 1E 00 08 */ stw r0, 8(r30) /* 80058E38 00055D98 90 1E 00 0C */ stw r0, 0xc(r30) /* 80058E3C 00055D9C 48 00 00 64 */ b lbl_80058EA0 lbl_80058E40: /* 80058E40 00055DA0 7F C3 F3 78 */ mr r3, r30 /* 80058E44 00055DA4 48 00 07 B9 */ bl "reserve__Q24rstl44vectorFi" /* 80058E48 00055DA8 80 1F 00 04 */ lwz r0, 4(r31) /* 80058E4C 00055DAC 80 BF 00 0C */ lwz r5, 0xc(r31) /* 80058E50 00055DB0 1C 00 00 0C */ mulli r0, r0, 0xc /* 80058E54 00055DB4 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80058E58 00055DB8 7C 85 02 14 */ add r4, r5, r0 /* 80058E5C 00055DBC 48 00 00 34 */ b lbl_80058E90 lbl_80058E60: /* 80058E60 00055DC0 28 03 00 00 */ cmplwi r3, 0 /* 80058E64 00055DC4 41 82 00 24 */ beq lbl_80058E88 /* 80058E68 00055DC8 80 05 00 00 */ lwz r0, 0(r5) /* 80058E6C 00055DCC 90 03 00 00 */ stw r0, 0(r3) /* 80058E70 00055DD0 80 05 00 04 */ lwz r0, 4(r5) /* 80058E74 00055DD4 90 03 00 04 */ stw r0, 4(r3) /* 80058E78 00055DD8 A0 05 00 08 */ lhz r0, 8(r5) /* 80058E7C 00055DDC B0 03 00 08 */ sth r0, 8(r3) /* 80058E80 00055DE0 88 05 00 0A */ lbz r0, 0xa(r5) /* 80058E84 00055DE4 98 03 00 0A */ stb r0, 0xa(r3) lbl_80058E88: /* 80058E88 00055DE8 38 63 00 0C */ addi r3, r3, 0xc /* 80058E8C 00055DEC 38 A5 00 0C */ addi r5, r5, 0xc lbl_80058E90: /* 80058E90 00055DF0 7C 05 20 40 */ cmplw r5, r4 /* 80058E94 00055DF4 40 82 FF CC */ bne lbl_80058E60 /* 80058E98 00055DF8 80 1F 00 04 */ lwz r0, 4(r31) /* 80058E9C 00055DFC 90 1E 00 04 */ stw r0, 4(r30) lbl_80058EA0: /* 80058EA0 00055E00 7F C3 F3 78 */ mr r3, r30 lbl_80058EA4: /* 80058EA4 00055E04 80 01 00 24 */ lwz r0, 0x24(r1) /* 80058EA8 00055E08 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80058EAC 00055E0C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80058EB0 00055E10 7C 08 03 A6 */ mtlr r0 /* 80058EB4 00055E14 38 21 00 20 */ addi r1, r1, 0x20 /* 80058EB8 00055E18 4E 80 00 20 */ blr .global __ct__6CWorldFR12IObjectStoreR11CResFactoryUi __ct__6CWorldFR12IObjectStoreR11CResFactoryUi: /* 80058EBC 00055E1C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80058EC0 00055E20 7C 08 02 A6 */ mflr r0 /* 80058EC4 00055E24 3D 00 80 3E */ lis r8, lbl_803DA04C@ha /* 80058EC8 00055E28 3C E0 80 3E */ lis r7, lbl_803DA014@ha /* 80058ECC 00055E2C 90 01 00 34 */ stw r0, 0x34(r1) /* 80058ED0 00055E30 38 07 A0 14 */ addi r0, r7, lbl_803DA014@l /* 80058ED4 00055E34 39 08 A0 4C */ addi r8, r8, lbl_803DA04C@l /* 80058ED8 00055E38 39 20 00 00 */ li r9, 0 /* 80058EDC 00055E3C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80058EE0 00055E40 7C BF 2B 78 */ mr r31, r5 /* 80058EE4 00055E44 38 E0 00 01 */ li r7, 1 /* 80058EE8 00055E48 38 AD A9 18 */ addi r5, r13, "mNull__Q24rstl66basic_string,Q24rstl17rmemory_allocator>"@sda21 /* 80058EEC 00055E4C 93 C1 00 28 */ stw r30, 0x28(r1) /* 80058EF0 00055E50 7C 7E 1B 78 */ mr r30, r3 /* 80058EF4 00055E54 3C 60 4D 4C */ lis r3, 0x4D4C564C@ha /* 80058EF8 00055E58 93 A1 00 24 */ stw r29, 0x24(r1) /* 80058EFC 00055E5C 91 1E 00 00 */ stw r8, 0(r30) /* 80058F00 00055E60 39 00 FF FF */ li r8, -1 /* 80058F04 00055E64 90 1E 00 00 */ stw r0, 0(r30) /* 80058F08 00055E68 38 03 56 4C */ addi r0, r3, 0x4D4C564C@l /* 80058F0C 00055E6C 91 3E 00 04 */ stw r9, 4(r30) /* 80058F10 00055E70 90 DE 00 08 */ stw r6, 8(r30) /* 80058F14 00055E74 91 1E 00 0C */ stw r8, 0xc(r30) /* 80058F18 00055E78 91 1E 00 10 */ stw r8, 0x10(r30) /* 80058F1C 00055E7C 91 3E 00 18 */ stw r9, 0x18(r30) /* 80058F20 00055E80 91 3E 00 1C */ stw r9, 0x1c(r30) /* 80058F24 00055E84 91 3E 00 20 */ stw r9, 0x20(r30) /* 80058F28 00055E88 91 1E 00 24 */ stw r8, 0x24(r30) /* 80058F2C 00055E8C 91 3E 00 28 */ stw r9, 0x28(r30) /* 80058F30 00055E90 91 3E 00 30 */ stw r9, 0x30(r30) /* 80058F34 00055E94 91 3E 00 34 */ stw r9, 0x34(r30) /* 80058F38 00055E98 91 3E 00 38 */ stw r9, 0x38(r30) /* 80058F3C 00055E9C 91 3E 00 3C */ stw r9, 0x3c(r30) /* 80058F40 00055EA0 91 3E 00 40 */ stw r9, 0x40(r30) /* 80058F44 00055EA4 91 3E 00 44 */ stw r9, 0x44(r30) /* 80058F48 00055EA8 91 3E 00 48 */ stw r9, 0x48(r30) /* 80058F4C 00055EAC 90 9E 00 60 */ stw r4, 0x60(r30) /* 80058F50 00055EB0 38 81 00 10 */ addi r4, r1, 0x10 /* 80058F54 00055EB4 93 FE 00 64 */ stw r31, 0x64(r30) /* 80058F58 00055EB8 80 6D A3 90 */ lwz r3, kInvalidAreaId@sda21(r13) /* 80058F5C 00055EBC 90 7E 00 68 */ stw r3, 0x68(r30) /* 80058F60 00055EC0 91 3E 00 6C */ stw r9, 0x6c(r30) /* 80058F64 00055EC4 88 7E 00 70 */ lbz r3, 0x70(r30) /* 80058F68 00055EC8 50 E3 3E 30 */ rlwimi r3, r7, 7, 0x18, 0x18 /* 80058F6C 00055ECC 98 7E 00 70 */ stb r3, 0x70(r30) /* 80058F70 00055ED0 88 7E 00 70 */ lbz r3, 0x70(r30) /* 80058F74 00055ED4 51 23 36 72 */ rlwimi r3, r9, 6, 0x19, 0x19 /* 80058F78 00055ED8 98 7E 00 70 */ stb r3, 0x70(r30) /* 80058F7C 00055EDC 88 7E 00 70 */ lbz r3, 0x70(r30) /* 80058F80 00055EE0 51 23 2E B4 */ rlwimi r3, r9, 5, 0x1a, 0x1a /* 80058F84 00055EE4 98 7E 00 70 */ stb r3, 0x70(r30) /* 80058F88 00055EE8 88 7E 00 70 */ lbz r3, 0x70(r30) /* 80058F8C 00055EEC 51 23 26 F6 */ rlwimi r3, r9, 4, 0x1b, 0x1b /* 80058F90 00055EF0 98 7E 00 70 */ stb r3, 0x70(r30) /* 80058F94 00055EF4 91 3E 00 78 */ stw r9, 0x78(r30) /* 80058F98 00055EF8 91 3E 00 7C */ stw r9, 0x7c(r30) /* 80058F9C 00055EFC 91 3E 00 80 */ stw r9, 0x80(r30) /* 80058FA0 00055F00 90 BE 00 84 */ stw r5, 0x84(r30) /* 80058FA4 00055F04 91 3E 00 88 */ stw r9, 0x88(r30) /* 80058FA8 00055F08 91 3E 00 8C */ stw r9, 0x8c(r30) /* 80058FAC 00055F0C 99 3E 00 A0 */ stb r9, 0xa0(r30) /* 80058FB0 00055F10 99 3E 00 B0 */ stb r9, 0xb0(r30) /* 80058FB4 00055F14 99 3E 00 C0 */ stb r9, 0xc0(r30) /* 80058FB8 00055F18 91 3E 00 C4 */ stw r9, 0xc4(r30) /* 80058FBC 00055F1C 91 3E 00 C8 */ stw r9, 0xc8(r30) /* 80058FC0 00055F20 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) /* 80058FC4 00055F24 90 01 00 10 */ stw r0, 0x10(r1) /* 80058FC8 00055F28 38 63 00 04 */ addi r3, r3, 4 /* 80058FCC 00055F2C 90 C1 00 14 */ stw r6, 0x14(r1) /* 80058FD0 00055F30 48 2E 2C 81 */ bl ResourceSize__10CResLoaderCFRC10SObjectTag /* 80058FD4 00055F34 3C A0 80 3D */ lis r5, lbl_803CCF70@ha /* 80058FD8 00055F38 3C 80 80 3D */ lis r4, kUnknownType__10CCallStack@ha /* 80058FDC 00055F3C 90 7E 00 44 */ stw r3, 0x44(r30) /* 80058FE0 00055F40 38 A5 CF 70 */ addi r5, r5, lbl_803CCF70@l /* 80058FE4 00055F44 38 C4 6A A8 */ addi r6, r4, kUnknownType__10CCallStack@l /* 80058FE8 00055F48 38 61 00 08 */ addi r3, r1, 8 /* 80058FEC 00055F4C 38 A5 00 01 */ addi r5, r5, 1 /* 80058FF0 00055F50 38 80 FF FF */ li r4, -1 /* 80058FF4 00055F54 48 27 D3 E1 */ bl __ct__10CCallStackFUiPCcPCc /* 80058FF8 00055F58 7C 67 1B 78 */ mr r7, r3 /* 80058FFC 00055F5C 80 7E 00 44 */ lwz r3, 0x44(r30) /* 80059000 00055F60 38 80 00 02 */ li r4, 2 /* 80059004 00055F64 38 A0 00 01 */ li r5, 1 /* 80059008 00055F68 38 C0 00 00 */ li r6, 0 /* 8005900C 00055F6C 48 2B C9 89 */ bl Alloc__7CMemoryFUlQ210IAllocator5EHintQ210IAllocator6EScopeQ210IAllocator5ETypeRC10CCallStack /* 80059010 00055F70 7C 7D 1B 78 */ mr r29, r3 /* 80059014 00055F74 80 7E 00 40 */ lwz r3, 0x40(r30) /* 80059018 00055F78 48 2B C9 19 */ bl Free__7CMemoryFPCv /* 8005901C 00055F7C 93 BE 00 40 */ stw r29, 0x40(r30) /* 80059020 00055F80 38 7F 00 04 */ addi r3, r31, 4 /* 80059024 00055F84 38 81 00 10 */ addi r4, r1, 0x10 /* 80059028 00055F88 80 BE 00 40 */ lwz r5, 0x40(r30) /* 8005902C 00055F8C 48 2E 2B 4D */ bl LoadResourceAsync__10CResLoaderFRC10SObjectTagPc /* 80059030 00055F90 80 1E 00 3C */ lwz r0, 0x3c(r30) /* 80059034 00055F94 7C 7F 1B 78 */ mr r31, r3 /* 80059038 00055F98 28 00 00 00 */ cmplwi r0, 0 /* 8005903C 00055F9C 41 82 00 1C */ beq lbl_80059058 /* 80059040 00055FA0 7C 03 03 78 */ mr r3, r0 /* 80059044 00055FA4 38 80 00 01 */ li r4, 1 /* 80059048 00055FA8 81 83 00 00 */ lwz r12, 0(r3) /* 8005904C 00055FAC 81 8C 00 08 */ lwz r12, 8(r12) /* 80059050 00055FB0 7D 89 03 A6 */ mtctr r12 /* 80059054 00055FB4 4E 80 04 21 */ bctrl lbl_80059058: /* 80059058 00055FB8 93 FE 00 3C */ stw r31, 0x3c(r30) /* 8005905C 00055FBC 7F C3 F3 78 */ mr r3, r30 /* 80059060 00055FC0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80059064 00055FC4 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80059068 00055FC8 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8005906C 00055FCC 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80059070 00055FD0 7C 08 03 A6 */ mtlr r0 /* 80059074 00055FD4 38 21 00 30 */ addi r1, r1, 0x30 /* 80059078 00055FD8 4E 80 00 20 */ blr .global __ct__Q26CWorld15CSoundGroupDataFiUi __ct__Q26CWorld15CSoundGroupDataFiUi: /* 8005907C 00055FDC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80059080 00055FE0 7C 08 02 A6 */ mflr r0 /* 80059084 00055FE4 90 01 00 24 */ stw r0, 0x24(r1) /* 80059088 00055FE8 38 0D A9 18 */ addi r0, r13, "mNull__Q24rstl66basic_string,Q24rstl17rmemory_allocator>"@sda21 /* 8005908C 00055FEC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80059090 00055FF0 7C BF 2B 78 */ mr r31, r5 /* 80059094 00055FF4 38 A0 00 00 */ li r5, 0 /* 80059098 00055FF8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8005909C 00055FFC 7C 7E 1B 78 */ mr r30, r3 /* 800590A0 00056000 90 83 00 00 */ stw r4, 0(r3) /* 800590A4 00056004 7F E3 FB 78 */ mr r3, r31 /* 800590A8 00056008 93 FE 00 04 */ stw r31, 4(r30) /* 800590AC 0005600C 88 9E 00 08 */ lbz r4, 8(r30) /* 800590B0 00056010 50 A4 3E 30 */ rlwimi r4, r5, 7, 0x18, 0x18 /* 800590B4 00056014 98 9E 00 08 */ stb r4, 8(r30) /* 800590B8 00056018 88 9E 00 08 */ lbz r4, 8(r30) /* 800590BC 0005601C 50 A4 36 72 */ rlwimi r4, r5, 6, 0x19, 0x19 /* 800590C0 00056020 98 9E 00 08 */ stb r4, 8(r30) /* 800590C4 00056024 90 1E 00 0C */ stw r0, 0xc(r30) /* 800590C8 00056028 90 BE 00 10 */ stw r5, 0x10(r30) /* 800590CC 0005602C 90 BE 00 14 */ stw r5, 0x14(r30) /* 800590D0 00056030 98 BE 00 24 */ stb r5, 0x24(r30) /* 800590D4 00056034 48 2F 27 71 */ bl SysGetGroupSetName__9CAudioSysFUi /* 800590D8 00056038 48 2F 2F 81 */ bl "SysIsGroupSetLoaded__9CAudioSysFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800590DC 0005603C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800590E0 00056040 40 82 00 70 */ bne lbl_80059150 /* 800590E4 00056044 3C 60 41 47 */ lis r3, 0x41475343@ha /* 800590E8 00056048 93 E1 00 14 */ stw r31, 0x14(r1) /* 800590EC 0005604C 38 03 53 43 */ addi r0, r3, 0x41475343@l /* 800590F0 00056050 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800590F4 00056054 90 01 00 10 */ stw r0, 0x10(r1) /* 800590F8 00056058 38 61 00 08 */ addi r3, r1, 8 /* 800590FC 0005605C 38 A1 00 10 */ addi r5, r1, 0x10 /* 80059100 00056060 81 84 00 00 */ lwz r12, 0(r4) /* 80059104 00056064 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80059108 00056068 7D 89 03 A6 */ mtctr r12 /* 8005910C 0005606C 4E 80 04 21 */ bctrl /* 80059110 00056070 88 1E 00 24 */ lbz r0, 0x24(r30) /* 80059114 00056074 28 00 00 00 */ cmplwi r0, 0 /* 80059118 00056078 40 82 00 20 */ bne lbl_80059138 /* 8005911C 0005607C 34 7E 00 1C */ addic. r3, r30, 0x1c /* 80059120 00056080 41 82 00 0C */ beq lbl_8005912C /* 80059124 00056084 38 81 00 08 */ addi r4, r1, 8 /* 80059128 00056088 48 2E 7D 81 */ bl __ct__6CTokenFRC6CToken lbl_8005912C: /* 8005912C 0005608C 38 00 00 01 */ li r0, 1 /* 80059130 00056090 98 1E 00 24 */ stb r0, 0x24(r30) /* 80059134 00056094 48 00 00 10 */ b lbl_80059144 lbl_80059138: /* 80059138 00056098 38 7E 00 1C */ addi r3, r30, 0x1c /* 8005913C 0005609C 38 81 00 08 */ addi r4, r1, 8 /* 80059140 000560A0 48 2E 7B 85 */ bl __as__6CTokenFRC6CToken lbl_80059144: /* 80059144 000560A4 38 61 00 08 */ addi r3, r1, 8 /* 80059148 000560A8 38 80 FF FF */ li r4, -1 /* 8005914C 000560AC 48 2E 7C F5 */ bl __dt__6CTokenFv lbl_80059150: /* 80059150 000560B0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80059154 000560B4 7F C3 F3 78 */ mr r3, r30 /* 80059158 000560B8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005915C 000560BC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80059160 000560C0 7C 08 03 A6 */ mtlr r0 /* 80059164 000560C4 38 21 00 20 */ addi r1, r1, 0x20 /* 80059168 000560C8 4E 80 00 20 */ blr .global __dt__6IWorldFv __dt__6IWorldFv: /* 8005916C 000560CC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80059170 000560D0 7C 08 02 A6 */ mflr r0 /* 80059174 000560D4 90 01 00 14 */ stw r0, 0x14(r1) /* 80059178 000560D8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005917C 000560DC 7C 7F 1B 79 */ or. r31, r3, r3 /* 80059180 000560E0 41 82 00 1C */ beq lbl_8005919C /* 80059184 000560E4 3C A0 80 3E */ lis r5, lbl_803DA04C@ha /* 80059188 000560E8 7C 80 07 35 */ extsh. r0, r4 /* 8005918C 000560EC 38 05 A0 4C */ addi r0, r5, lbl_803DA04C@l /* 80059190 000560F0 90 1F 00 00 */ stw r0, 0(r31) /* 80059194 000560F4 40 81 00 08 */ ble lbl_8005919C /* 80059198 000560F8 48 2B C7 99 */ bl Free__7CMemoryFPCv lbl_8005919C: /* 8005919C 000560FC 80 01 00 14 */ lwz r0, 0x14(r1) /* 800591A0 00056100 7F E3 FB 78 */ mr r3, r31 /* 800591A4 00056104 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800591A8 00056108 7C 08 03 A6 */ mtlr r0 /* 800591AC 0005610C 38 21 00 10 */ addi r1, r1, 0x10 /* 800591B0 00056110 4E 80 00 20 */ blr .global __ct__6CRelayFR12CInputStream __ct__6CRelayFR12CInputStream: /* 800591B4 00056114 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800591B8 00056118 7C 08 02 A6 */ mflr r0 /* 800591BC 0005611C 90 01 00 14 */ stw r0, 0x14(r1) /* 800591C0 00056120 93 E1 00 0C */ stw r31, 0xc(r1) /* 800591C4 00056124 7C 9F 23 78 */ mr r31, r4 /* 800591C8 00056128 93 C1 00 08 */ stw r30, 8(r1) /* 800591CC 0005612C 7C 7E 1B 78 */ mr r30, r3 /* 800591D0 00056130 7F E3 FB 78 */ mr r3, r31 /* 800591D4 00056134 48 2E 5A B1 */ bl ReadLong__12CInputStreamFv /* 800591D8 00056138 90 7E 00 00 */ stw r3, 0(r30) /* 800591DC 0005613C 7F E3 FB 78 */ mr r3, r31 /* 800591E0 00056140 48 2E 5A A5 */ bl ReadLong__12CInputStreamFv /* 800591E4 00056144 90 7E 00 04 */ stw r3, 4(r30) /* 800591E8 00056148 7F E3 FB 78 */ mr r3, r31 /* 800591EC 0005614C 48 2E 5A C5 */ bl ReadShort__12CInputStreamFv /* 800591F0 00056150 B0 7E 00 08 */ sth r3, 8(r30) /* 800591F4 00056154 7F E3 FB 78 */ mr r3, r31 /* 800591F8 00056158 48 2E 5A E5 */ bl ReadBool__12CInputStreamFv /* 800591FC 0005615C 98 7E 00 0A */ stb r3, 0xa(r30) /* 80059200 00056160 7F C3 F3 78 */ mr r3, r30 /* 80059204 00056164 80 01 00 14 */ lwz r0, 0x14(r1) /* 80059208 00056168 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005920C 0005616C 83 C1 00 08 */ lwz r30, 8(r1) /* 80059210 00056170 7C 08 03 A6 */ mtlr r0 /* 80059214 00056174 38 21 00 10 */ addi r1, r1, 0x10 /* 80059218 00056178 4E 80 00 20 */ blr .global ReadWorldLayers__12CWorldLayersFR12CInputStream ReadWorldLayers__12CWorldLayersFR12CInputStream: /* 8005921C 0005617C 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80059220 00056180 7C 08 02 A6 */ mflr r0 /* 80059224 00056184 28 04 00 0E */ cmplwi r4, 0xe /* 80059228 00056188 90 01 00 64 */ stw r0, 0x64(r1) /* 8005922C 0005618C BF 41 00 48 */ stmw r26, 0x48(r1) /* 80059230 00056190 7C 7E 1B 78 */ mr r30, r3 /* 80059234 00056194 7C BF 2B 78 */ mr r31, r5 /* 80059238 00056198 40 81 02 70 */ ble lbl_800594A8 /* 8005923C 0005619C 7F C4 F3 78 */ mr r4, r30 /* 80059240 000561A0 38 61 00 38 */ addi r3, r1, 0x38 /* 80059244 000561A4 38 A1 00 0C */ addi r5, r1, 0xc /* 80059248 000561A8 48 00 02 D9 */ bl sub_80059520 /* 8005924C 000561AC 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80059250 000561B0 38 60 00 10 */ li r3, 0x10 /* 80059254 000561B4 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 80059258 000561B8 38 A0 00 00 */ li r5, 0 /* 8005925C 000561BC 38 84 00 01 */ addi r4, r4, 1 /* 80059260 000561C0 48 2B C6 0D */ bl __nw__FUlPCcPCc /* 80059264 000561C4 7C 7D 1B 79 */ or. r29, r3, r3 /* 80059268 000561C8 41 82 00 B4 */ beq lbl_8005931C /* 8005926C 000561CC 38 00 00 00 */ li r0, 0 /* 80059270 000561D0 7F C3 F3 78 */ mr r3, r30 /* 80059274 000561D4 90 1D 00 04 */ stw r0, 4(r29) /* 80059278 000561D8 90 1D 00 08 */ stw r0, 8(r29) /* 8005927C 000561DC 90 1D 00 0C */ stw r0, 0xc(r29) /* 80059280 000561E0 48 2E 5A 05 */ bl ReadLong__12CInputStreamFv /* 80059284 000561E4 7C 7A 1B 78 */ mr r26, r3 /* 80059288 000561E8 7F A3 EB 78 */ mr r3, r29 /* 8005928C 000561EC 7F 44 D3 78 */ mr r4, r26 /* 80059290 000561F0 48 00 09 25 */ bl "reserve__Q24rstl110vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Fi" /* 80059294 000561F4 3B 81 00 08 */ addi r28, r1, 8 /* 80059298 000561F8 3B 60 00 00 */ li r27, 0 /* 8005929C 000561FC 48 00 00 78 */ b lbl_80059314 lbl_800592A0: /* 800592A0 00056200 88 0D A2 20 */ lbz r0, lbl_805A8DE0@sda21(r13) /* 800592A4 00056204 7F C4 F3 78 */ mr r4, r30 /* 800592A8 00056208 7F 85 E3 78 */ mr r5, r28 /* 800592AC 0005620C 38 61 00 28 */ addi r3, r1, 0x28 /* 800592B0 00056210 98 01 00 08 */ stb r0, 8(r1) /* 800592B4 00056214 48 00 02 09 */ bl sub_800594bc /* 800592B8 00056218 80 1D 00 04 */ lwz r0, 4(r29) /* 800592BC 0005621C 80 BD 00 08 */ lwz r5, 8(r29) /* 800592C0 00056220 7C 00 28 00 */ cmpw r0, r5 /* 800592C4 00056224 41 80 00 1C */ blt lbl_800592E0 /* 800592C8 00056228 2C 05 00 00 */ cmpwi r5, 0 /* 800592CC 0005622C 7F A3 EB 78 */ mr r3, r29 /* 800592D0 00056230 38 80 00 04 */ li r4, 4 /* 800592D4 00056234 41 82 00 08 */ beq lbl_800592DC /* 800592D8 00056238 54 A4 08 3C */ slwi r4, r5, 1 lbl_800592DC: /* 800592DC 0005623C 48 00 08 D9 */ bl "reserve__Q24rstl110vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Fi" lbl_800592E0: /* 800592E0 00056240 80 1D 00 04 */ lwz r0, 4(r29) /* 800592E4 00056244 80 7D 00 0C */ lwz r3, 0xc(r29) /* 800592E8 00056248 54 00 20 36 */ slwi r0, r0, 4 /* 800592EC 0005624C 7C 63 02 15 */ add. r3, r3, r0 /* 800592F0 00056250 41 82 00 0C */ beq lbl_800592FC /* 800592F4 00056254 38 81 00 28 */ addi r4, r1, 0x28 /* 800592F8 00056258 48 2E 4E 69 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_800592FC: /* 800592FC 0005625C 80 9D 00 04 */ lwz r4, 4(r29) /* 80059300 00056260 38 61 00 28 */ addi r3, r1, 0x28 /* 80059304 00056264 38 04 00 01 */ addi r0, r4, 1 /* 80059308 00056268 90 1D 00 04 */ stw r0, 4(r29) /* 8005930C 0005626C 48 2E 47 D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80059310 00056270 3B 7B 00 01 */ addi r27, r27, 1 lbl_80059314: /* 80059314 00056274 7C 1B D0 00 */ cmpw r27, r26 /* 80059318 00056278 41 80 FF 88 */ blt lbl_800592A0 lbl_8005931C: /* 8005931C 0005627C 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80059320 00056280 38 60 00 08 */ li r3, 8 /* 80059324 00056284 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 80059328 00056288 38 A0 00 00 */ li r5, 0 /* 8005932C 0005628C 38 84 00 01 */ addi r4, r4, 1 /* 80059330 00056290 48 2B C5 3D */ bl __nw__FUlPCcPCc /* 80059334 00056294 28 03 00 00 */ cmplwi r3, 0 /* 80059338 00056298 41 82 00 10 */ beq lbl_80059348 /* 8005933C 0005629C 93 A3 00 00 */ stw r29, 0(r3) /* 80059340 000562A0 38 00 00 01 */ li r0, 1 /* 80059344 000562A4 90 03 00 04 */ stw r0, 4(r3) lbl_80059348: /* 80059348 000562A8 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 8005934C 000562AC 90 61 00 24 */ stw r3, 0x24(r1) /* 80059350 000562B0 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 80059354 000562B4 38 60 00 10 */ li r3, 0x10 /* 80059358 000562B8 38 84 00 01 */ addi r4, r4, 1 /* 8005935C 000562BC 38 A0 00 00 */ li r5, 0 /* 80059360 000562C0 48 2B C5 0D */ bl __nw__FUlPCcPCc /* 80059364 000562C4 7C 7B 1B 79 */ or. r27, r3, r3 /* 80059368 000562C8 41 82 00 98 */ beq lbl_80059400 /* 8005936C 000562CC 38 00 00 00 */ li r0, 0 /* 80059370 000562D0 7F C3 F3 78 */ mr r3, r30 /* 80059374 000562D4 90 1B 00 04 */ stw r0, 4(r27) /* 80059378 000562D8 90 1B 00 08 */ stw r0, 8(r27) /* 8005937C 000562DC 90 1B 00 0C */ stw r0, 0xc(r27) /* 80059380 000562E0 48 2E 59 05 */ bl ReadLong__12CInputStreamFv /* 80059384 000562E4 7C 7A 1B 78 */ mr r26, r3 /* 80059388 000562E8 7F 63 DB 78 */ mr r3, r27 /* 8005938C 000562EC 7F 44 D3 78 */ mr r4, r26 /* 80059390 000562F0 48 00 09 19 */ bl "reserve__Q24rstl36vectorFi" /* 80059394 000562F4 3B 80 00 00 */ li r28, 0 /* 80059398 000562F8 48 00 00 60 */ b lbl_800593F8 lbl_8005939C: /* 8005939C 000562FC 7F C3 F3 78 */ mr r3, r30 /* 800593A0 00056300 48 2E 58 E5 */ bl ReadLong__12CInputStreamFv /* 800593A4 00056304 80 1B 00 04 */ lwz r0, 4(r27) /* 800593A8 00056308 7C 7D 1B 78 */ mr r29, r3 /* 800593AC 0005630C 80 BB 00 08 */ lwz r5, 8(r27) /* 800593B0 00056310 7C 00 28 00 */ cmpw r0, r5 /* 800593B4 00056314 41 80 00 1C */ blt lbl_800593D0 /* 800593B8 00056318 2C 05 00 00 */ cmpwi r5, 0 /* 800593BC 0005631C 7F 63 DB 78 */ mr r3, r27 /* 800593C0 00056320 38 80 00 04 */ li r4, 4 /* 800593C4 00056324 41 82 00 08 */ beq lbl_800593CC /* 800593C8 00056328 54 A4 08 3C */ slwi r4, r5, 1 lbl_800593CC: /* 800593CC 0005632C 48 00 08 DD */ bl "reserve__Q24rstl36vectorFi" lbl_800593D0: /* 800593D0 00056330 80 1B 00 04 */ lwz r0, 4(r27) /* 800593D4 00056334 80 7B 00 0C */ lwz r3, 0xc(r27) /* 800593D8 00056338 54 00 10 3A */ slwi r0, r0, 2 /* 800593DC 0005633C 7C 63 02 15 */ add. r3, r3, r0 /* 800593E0 00056340 41 82 00 08 */ beq lbl_800593E8 /* 800593E4 00056344 93 A3 00 00 */ stw r29, 0(r3) lbl_800593E8: /* 800593E8 00056348 80 7B 00 04 */ lwz r3, 4(r27) /* 800593EC 0005634C 3B 9C 00 01 */ addi r28, r28, 1 /* 800593F0 00056350 38 03 00 01 */ addi r0, r3, 1 /* 800593F4 00056354 90 1B 00 04 */ stw r0, 4(r27) lbl_800593F8: /* 800593F8 00056358 7C 1C D0 00 */ cmpw r28, r26 /* 800593FC 0005635C 41 80 FF A0 */ blt lbl_8005939C lbl_80059400: /* 80059400 00056360 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80059404 00056364 38 60 00 08 */ li r3, 8 /* 80059408 00056368 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 8005940C 0005636C 38 A0 00 00 */ li r5, 0 /* 80059410 00056370 38 84 00 01 */ addi r4, r4, 1 /* 80059414 00056374 48 2B C4 59 */ bl __nw__FUlPCcPCc /* 80059418 00056378 28 03 00 00 */ cmplwi r3, 0 /* 8005941C 0005637C 41 82 00 10 */ beq lbl_8005942C /* 80059420 00056380 93 63 00 00 */ stw r27, 0(r3) /* 80059424 00056384 38 00 00 01 */ li r0, 1 /* 80059428 00056388 90 03 00 04 */ stw r0, 4(r3) lbl_8005942C: /* 8005942C 0005638C 90 61 00 20 */ stw r3, 0x20(r1) /* 80059430 00056390 7F E4 FB 78 */ mr r4, r31 /* 80059434 00056394 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 80059438 00056398 48 17 A5 A1 */ bl StateForWorld__10CGameStateFUi /* 8005943C 0005639C 48 17 B8 F9 */ bl GetLayerState__11CWorldStateFv /* 80059440 000563A0 80 63 00 00 */ lwz r3, 0(r3) /* 80059444 000563A4 38 81 00 38 */ addi r4, r1, 0x38 /* 80059448 000563A8 38 A1 00 24 */ addi r5, r1, 0x24 /* 8005944C 000563AC 38 C1 00 20 */ addi r6, r1, 0x20 /* 80059450 000563B0 80 63 00 00 */ lwz r3, 0(r3) /* 80059454 000563B4 48 1D AB 75 */ bl "InitializeWorldLayers__16CWorldLayerStateFRCQ24rstl56vector" /* 80059458 000563B8 38 61 00 20 */ addi r3, r1, 0x20 /* 8005945C 000563BC 48 00 0A 09 */ bl sub_80059e64 /* 80059460 000563C0 38 61 00 24 */ addi r3, r1, 0x24 /* 80059464 000563C4 48 00 09 35 */ bl sub_80059d98 /* 80059468 000563C8 80 01 00 3C */ lwz r0, 0x3c(r1) /* 8005946C 000563CC 80 61 00 44 */ lwz r3, 0x44(r1) /* 80059470 000563D0 54 00 20 36 */ slwi r0, r0, 4 /* 80059474 000563D4 7C 03 02 14 */ add r0, r3, r0 /* 80059478 000563D8 90 61 00 14 */ stw r3, 0x14(r1) /* 8005947C 000563DC 7C 64 1B 78 */ mr r4, r3 /* 80059480 000563E0 90 01 00 1C */ stw r0, 0x1c(r1) /* 80059484 000563E4 90 01 00 18 */ stw r0, 0x18(r1) /* 80059488 000563E8 90 61 00 10 */ stw r3, 0x10(r1) /* 8005948C 000563EC 48 00 00 08 */ b lbl_80059494 lbl_80059490: /* 80059490 000563F0 38 84 00 10 */ addi r4, r4, 0x10 lbl_80059494: /* 80059494 000563F4 7C 04 00 40 */ cmplw r4, r0 /* 80059498 000563F8 40 82 FF F8 */ bne lbl_80059490 /* 8005949C 000563FC 28 03 00 00 */ cmplwi r3, 0 /* 800594A0 00056400 41 82 00 08 */ beq lbl_800594A8 /* 800594A4 00056404 48 2B C4 8D */ bl Free__7CMemoryFPCv lbl_800594A8: /* 800594A8 00056408 BB 41 00 48 */ lmw r26, 0x48(r1) /* 800594AC 0005640C 80 01 00 64 */ lwz r0, 0x64(r1) /* 800594B0 00056410 7C 08 03 A6 */ mtlr r0 /* 800594B4 00056414 38 21 00 60 */ addi r1, r1, 0x60 /* 800594B8 00056418 4E 80 00 20 */ blr .global sub_800594bc sub_800594bc: /* 800594BC 0005641C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800594C0 00056420 7C 08 02 A6 */ mflr r0 /* 800594C4 00056424 7C 85 23 78 */ mr r5, r4 /* 800594C8 00056428 90 01 00 24 */ stw r0, 0x24(r1) /* 800594CC 0005642C 38 81 00 08 */ addi r4, r1, 8 /* 800594D0 00056430 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800594D4 00056434 7C 7F 1B 78 */ mr r31, r3 /* 800594D8 00056438 88 0D A2 24 */ lbz r0, lbl_805A8DE4@sda21(r13) /* 800594DC 0005643C 98 01 00 08 */ stb r0, 8(r1) /* 800594E0 00056440 48 00 00 19 */ bl "cinput_stream_helper,Q24rstl17rmemory_allocator>>__FRC82TType,Q24rstl17rmemory_allocator>>R12CInputStream" /* 800594E4 00056444 80 01 00 24 */ lwz r0, 0x24(r1) /* 800594E8 00056448 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800594EC 0005644C 7C 08 03 A6 */ mtlr r0 /* 800594F0 00056450 38 21 00 20 */ addi r1, r1, 0x20 /* 800594F4 00056454 4E 80 00 20 */ blr .global "cinput_stream_helper,Q24rstl17rmemory_allocator>>__FRC82TType,Q24rstl17rmemory_allocator>>R12CInputStream" "cinput_stream_helper,Q24rstl17rmemory_allocator>>__FRC82TType,Q24rstl17rmemory_allocator>>R12CInputStream": /* 800594F8 00056458 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800594FC 0005645C 7C 08 02 A6 */ mflr r0 /* 80059500 00056460 7C A4 2B 78 */ mr r4, r5 /* 80059504 00056464 90 01 00 14 */ stw r0, 0x14(r1) /* 80059508 00056468 38 A1 00 08 */ addi r5, r1, 8 /* 8005950C 0005646C 48 2E 4D ED */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" /* 80059510 00056470 80 01 00 14 */ lwz r0, 0x14(r1) /* 80059514 00056474 7C 08 03 A6 */ mtlr r0 /* 80059518 00056478 38 21 00 10 */ addi r1, r1, 0x10 /* 8005951C 0005647C 4E 80 00 20 */ blr .global sub_80059520 sub_80059520: /* 80059520 00056480 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059524 00056484 7C 08 02 A6 */ mflr r0 /* 80059528 00056488 90 01 00 34 */ stw r0, 0x34(r1) /* 8005952C 0005648C 38 00 00 00 */ li r0, 0 /* 80059530 00056490 BF 21 00 14 */ stmw r25, 0x14(r1) /* 80059534 00056494 7C 79 1B 78 */ mr r25, r3 /* 80059538 00056498 7C 9A 23 78 */ mr r26, r4 /* 8005953C 0005649C 90 03 00 04 */ stw r0, 4(r3) /* 80059540 000564A0 7F 43 D3 78 */ mr r3, r26 /* 80059544 000564A4 90 19 00 08 */ stw r0, 8(r25) /* 80059548 000564A8 90 19 00 0C */ stw r0, 0xc(r25) /* 8005954C 000564AC 48 2E 57 39 */ bl ReadLong__12CInputStreamFv /* 80059550 000564B0 7C 7C 1B 78 */ mr r28, r3 /* 80059554 000564B4 7F 23 CB 78 */ mr r3, r25 /* 80059558 000564B8 7F 84 E3 78 */ mr r4, r28 /* 8005955C 000564BC 48 00 05 59 */ bl "reserve__Q24rstl56vectorFi" /* 80059560 000564C0 3B 60 00 00 */ li r27, 0 /* 80059564 000564C4 48 00 00 78 */ b lbl_800595DC lbl_80059568: /* 80059568 000564C8 7F 43 D3 78 */ mr r3, r26 /* 8005956C 000564CC 48 2E 57 19 */ bl ReadLong__12CInputStreamFv /* 80059570 000564D0 7C 7D 1B 78 */ mr r29, r3 /* 80059574 000564D4 7F 43 D3 78 */ mr r3, r26 /* 80059578 000564D8 48 2E 56 DD */ bl ReadLongLong__12CInputStreamFv /* 8005957C 000564DC 80 19 00 04 */ lwz r0, 4(r25) /* 80059580 000564E0 7C 9E 23 78 */ mr r30, r4 /* 80059584 000564E4 80 B9 00 08 */ lwz r5, 8(r25) /* 80059588 000564E8 7C 7F 1B 78 */ mr r31, r3 /* 8005958C 000564EC 7C 00 28 00 */ cmpw r0, r5 /* 80059590 000564F0 41 80 00 1C */ blt lbl_800595AC /* 80059594 000564F4 2C 05 00 00 */ cmpwi r5, 0 /* 80059598 000564F8 7F 23 CB 78 */ mr r3, r25 /* 8005959C 000564FC 38 80 00 04 */ li r4, 4 /* 800595A0 00056500 41 82 00 08 */ beq lbl_800595A8 /* 800595A4 00056504 54 A4 08 3C */ slwi r4, r5, 1 lbl_800595A8: /* 800595A8 00056508 48 00 05 0D */ bl "reserve__Q24rstl56vectorFi" lbl_800595AC: /* 800595AC 0005650C 80 19 00 04 */ lwz r0, 4(r25) /* 800595B0 00056510 80 79 00 0C */ lwz r3, 0xc(r25) /* 800595B4 00056514 54 00 20 36 */ slwi r0, r0, 4 /* 800595B8 00056518 7C 63 02 15 */ add. r3, r3, r0 /* 800595BC 0005651C 41 82 00 10 */ beq lbl_800595CC /* 800595C0 00056520 93 A3 00 00 */ stw r29, 0(r3) /* 800595C4 00056524 93 C3 00 0C */ stw r30, 0xc(r3) /* 800595C8 00056528 93 E3 00 08 */ stw r31, 8(r3) lbl_800595CC: /* 800595CC 0005652C 80 79 00 04 */ lwz r3, 4(r25) /* 800595D0 00056530 3B 7B 00 01 */ addi r27, r27, 1 /* 800595D4 00056534 38 03 00 01 */ addi r0, r3, 1 /* 800595D8 00056538 90 19 00 04 */ stw r0, 4(r25) lbl_800595DC: /* 800595DC 0005653C 7C 1B E0 00 */ cmpw r27, r28 /* 800595E0 00056540 41 80 FF 88 */ blt lbl_80059568 /* 800595E4 00056544 7F 23 CB 78 */ mr r3, r25 /* 800595E8 00056548 BB 21 00 14 */ lmw r25, 0x14(r1) /* 800595EC 0005654C 80 01 00 34 */ lwz r0, 0x34(r1) /* 800595F0 00056550 7C 08 03 A6 */ mtlr r0 /* 800595F4 00056554 38 21 00 30 */ addi r1, r1, 0x30 /* 800595F8 00056558 4E 80 00 20 */ blr .global "reserve__Q24rstl44vectorFi" "reserve__Q24rstl44vectorFi": /* 800595FC 0005655C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059600 00056560 7C 08 02 A6 */ mflr r0 /* 80059604 00056564 90 01 00 34 */ stw r0, 0x34(r1) /* 80059608 00056568 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8005960C 0005656C 7C 9F 23 78 */ mr r31, r4 /* 80059610 00056570 93 C1 00 28 */ stw r30, 0x28(r1) /* 80059614 00056574 7C 7E 1B 78 */ mr r30, r3 /* 80059618 00056578 93 A1 00 24 */ stw r29, 0x24(r1) /* 8005961C 0005657C 80 03 00 08 */ lwz r0, 8(r3) /* 80059620 00056580 7C 1F 00 00 */ cmpw r31, r0 /* 80059624 00056584 40 81 00 C8 */ ble lbl_800596EC /* 80059628 00056588 1C 7F 00 0C */ mulli r3, r31, 0xc /* 8005962C 0005658C 2C 03 00 00 */ cmpwi r3, 0 /* 80059630 00056590 40 82 00 0C */ bne lbl_8005963C /* 80059634 00056594 3B A0 00 00 */ li r29, 0 /* 80059638 00056598 48 00 00 1C */ b lbl_80059654 lbl_8005963C: /* 8005963C 0005659C 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80059640 000565A0 38 A0 00 00 */ li r5, 0 /* 80059644 000565A4 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 80059648 000565A8 38 84 00 01 */ addi r4, r4, 1 /* 8005964C 000565AC 48 2B C1 CD */ bl __nwa__FUlPCcPCc /* 80059650 000565B0 7C 7D 1B 78 */ mr r29, r3 lbl_80059654: /* 80059654 000565B4 80 1E 00 04 */ lwz r0, 4(r30) /* 80059658 000565B8 7F A4 EB 78 */ mr r4, r29 /* 8005965C 000565BC 80 BE 00 0C */ lwz r5, 0xc(r30) /* 80059660 000565C0 1C 00 00 0C */ mulli r0, r0, 0xc /* 80059664 000565C4 90 A1 00 10 */ stw r5, 0x10(r1) /* 80059668 000565C8 7C 65 02 14 */ add r3, r5, r0 /* 8005966C 000565CC 90 A1 00 14 */ stw r5, 0x14(r1) /* 80059670 000565D0 90 61 00 08 */ stw r3, 8(r1) /* 80059674 000565D4 90 61 00 0C */ stw r3, 0xc(r1) /* 80059678 000565D8 48 00 00 34 */ b lbl_800596AC lbl_8005967C: /* 8005967C 000565DC 28 04 00 00 */ cmplwi r4, 0 /* 80059680 000565E0 41 82 00 24 */ beq lbl_800596A4 /* 80059684 000565E4 80 05 00 00 */ lwz r0, 0(r5) /* 80059688 000565E8 90 04 00 00 */ stw r0, 0(r4) /* 8005968C 000565EC 80 05 00 04 */ lwz r0, 4(r5) /* 80059690 000565F0 90 04 00 04 */ stw r0, 4(r4) /* 80059694 000565F4 A0 05 00 08 */ lhz r0, 8(r5) /* 80059698 000565F8 B0 04 00 08 */ sth r0, 8(r4) /* 8005969C 000565FC 88 05 00 0A */ lbz r0, 0xa(r5) /* 800596A0 00056600 98 04 00 0A */ stb r0, 0xa(r4) lbl_800596A4: /* 800596A4 00056604 38 84 00 0C */ addi r4, r4, 0xc /* 800596A8 00056608 38 A5 00 0C */ addi r5, r5, 0xc lbl_800596AC: /* 800596AC 0005660C 7C 05 18 40 */ cmplw r5, r3 /* 800596B0 00056610 40 82 FF CC */ bne lbl_8005967C /* 800596B4 00056614 80 1E 00 04 */ lwz r0, 4(r30) /* 800596B8 00056618 80 7E 00 0C */ lwz r3, 0xc(r30) /* 800596BC 0005661C 1C 00 00 0C */ mulli r0, r0, 0xc /* 800596C0 00056620 7C 64 1B 78 */ mr r4, r3 /* 800596C4 00056624 7C 03 02 14 */ add r0, r3, r0 /* 800596C8 00056628 48 00 00 08 */ b lbl_800596D0 lbl_800596CC: /* 800596CC 0005662C 38 84 00 0C */ addi r4, r4, 0xc lbl_800596D0: /* 800596D0 00056630 7C 04 00 40 */ cmplw r4, r0 /* 800596D4 00056634 40 82 FF F8 */ bne lbl_800596CC /* 800596D8 00056638 28 03 00 00 */ cmplwi r3, 0 /* 800596DC 0005663C 41 82 00 08 */ beq lbl_800596E4 /* 800596E0 00056640 48 2B C2 51 */ bl Free__7CMemoryFPCv lbl_800596E4: /* 800596E4 00056644 93 BE 00 0C */ stw r29, 0xc(r30) /* 800596E8 00056648 93 FE 00 08 */ stw r31, 8(r30) lbl_800596EC: /* 800596EC 0005664C 80 01 00 34 */ lwz r0, 0x34(r1) /* 800596F0 00056650 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800596F4 00056654 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800596F8 00056658 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800596FC 0005665C 7C 08 03 A6 */ mtlr r0 /* 80059700 00056660 38 21 00 30 */ addi r1, r1, 0x30 /* 80059704 00056664 4E 80 00 20 */ blr .global "reserve__Q24rstl61vectorFi" "reserve__Q24rstl61vectorFi": /* 80059708 00056668 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005970C 0005666C 7C 08 02 A6 */ mflr r0 /* 80059710 00056670 90 01 00 34 */ stw r0, 0x34(r1) /* 80059714 00056674 BF 41 00 18 */ stmw r26, 0x18(r1) /* 80059718 00056678 7C 9E 23 78 */ mr r30, r4 /* 8005971C 0005667C 7C 7D 1B 78 */ mr r29, r3 /* 80059720 00056680 80 03 00 08 */ lwz r0, 8(r3) /* 80059724 00056684 7C 1E 00 00 */ cmpw r30, r0 /* 80059728 00056688 40 81 01 30 */ ble lbl_80059858 /* 8005972C 0005668C 1C 7E 00 28 */ mulli r3, r30, 0x28 /* 80059730 00056690 2C 03 00 00 */ cmpwi r3, 0 /* 80059734 00056694 40 82 00 0C */ bne lbl_80059740 /* 80059738 00056698 3B E0 00 00 */ li r31, 0 /* 8005973C 0005669C 48 00 00 1C */ b lbl_80059758 lbl_80059740: /* 80059740 000566A0 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80059744 000566A4 38 A0 00 00 */ li r5, 0 /* 80059748 000566A8 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 8005974C 000566AC 38 84 00 01 */ addi r4, r4, 1 /* 80059750 000566B0 48 2B C0 C9 */ bl __nwa__FUlPCcPCc /* 80059754 000566B4 7C 7F 1B 78 */ mr r31, r3 lbl_80059758: /* 80059758 000566B8 80 1D 00 04 */ lwz r0, 4(r29) /* 8005975C 000566BC 7F FB FB 78 */ mr r27, r31 /* 80059760 000566C0 83 5D 00 0C */ lwz r26, 0xc(r29) /* 80059764 000566C4 1C 00 00 28 */ mulli r0, r0, 0x28 /* 80059768 000566C8 93 41 00 10 */ stw r26, 0x10(r1) /* 8005976C 000566CC 7F 9A 02 14 */ add r28, r26, r0 /* 80059770 000566D0 93 41 00 14 */ stw r26, 0x14(r1) /* 80059774 000566D4 93 81 00 08 */ stw r28, 8(r1) /* 80059778 000566D8 93 81 00 0C */ stw r28, 0xc(r1) /* 8005977C 000566DC 48 00 00 5C */ b lbl_800597D8 lbl_80059780: /* 80059780 000566E0 28 1B 00 00 */ cmplwi r27, 0 /* 80059784 000566E4 41 82 00 4C */ beq lbl_800597D0 /* 80059788 000566E8 80 1A 00 00 */ lwz r0, 0(r26) /* 8005978C 000566EC 38 7B 00 0C */ addi r3, r27, 0xc /* 80059790 000566F0 38 9A 00 0C */ addi r4, r26, 0xc /* 80059794 000566F4 90 1B 00 00 */ stw r0, 0(r27) /* 80059798 000566F8 80 1A 00 04 */ lwz r0, 4(r26) /* 8005979C 000566FC 90 1B 00 04 */ stw r0, 4(r27) /* 800597A0 00056700 88 1A 00 08 */ lbz r0, 8(r26) /* 800597A4 00056704 98 1B 00 08 */ stb r0, 8(r27) /* 800597A8 00056708 48 2E 49 B9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800597AC 0005670C 88 1A 00 24 */ lbz r0, 0x24(r26) /* 800597B0 00056710 98 1B 00 24 */ stb r0, 0x24(r27) /* 800597B4 00056714 88 1A 00 24 */ lbz r0, 0x24(r26) /* 800597B8 00056718 28 00 00 00 */ cmplwi r0, 0 /* 800597BC 0005671C 41 82 00 14 */ beq lbl_800597D0 /* 800597C0 00056720 34 7B 00 1C */ addic. r3, r27, 0x1c /* 800597C4 00056724 38 9A 00 1C */ addi r4, r26, 0x1c /* 800597C8 00056728 41 82 00 08 */ beq lbl_800597D0 /* 800597CC 0005672C 48 2E 76 DD */ bl __ct__6CTokenFRC6CToken lbl_800597D0: /* 800597D0 00056730 3B 7B 00 28 */ addi r27, r27, 0x28 /* 800597D4 00056734 3B 5A 00 28 */ addi r26, r26, 0x28 lbl_800597D8: /* 800597D8 00056738 7C 1A E0 40 */ cmplw r26, r28 /* 800597DC 0005673C 40 82 FF A4 */ bne lbl_80059780 /* 800597E0 00056740 80 1D 00 04 */ lwz r0, 4(r29) /* 800597E4 00056744 3B 80 00 00 */ li r28, 0 /* 800597E8 00056748 83 5D 00 0C */ lwz r26, 0xc(r29) /* 800597EC 0005674C 1C 00 00 28 */ mulli r0, r0, 0x28 /* 800597F0 00056750 7F 7A 02 14 */ add r27, r26, r0 /* 800597F4 00056754 48 00 00 44 */ b lbl_80059838 lbl_800597F8: /* 800597F8 00056758 28 1A 00 00 */ cmplwi r26, 0 /* 800597FC 0005675C 41 82 00 38 */ beq lbl_80059834 /* 80059800 00056760 34 1A 00 1C */ addic. r0, r26, 0x1c /* 80059804 00056764 41 82 00 20 */ beq lbl_80059824 /* 80059808 00056768 88 1A 00 24 */ lbz r0, 0x24(r26) /* 8005980C 0005676C 28 00 00 00 */ cmplwi r0, 0 /* 80059810 00056770 41 82 00 10 */ beq lbl_80059820 /* 80059814 00056774 38 7A 00 1C */ addi r3, r26, 0x1c /* 80059818 00056778 38 80 FF FF */ li r4, -1 /* 8005981C 0005677C 48 2E 76 25 */ bl __dt__6CTokenFv lbl_80059820: /* 80059820 00056780 9B 9A 00 24 */ stb r28, 0x24(r26) lbl_80059824: /* 80059824 00056784 34 1A 00 0C */ addic. r0, r26, 0xc /* 80059828 00056788 41 82 00 0C */ beq lbl_80059834 /* 8005982C 0005678C 38 7A 00 0C */ addi r3, r26, 0xc /* 80059830 00056790 48 2E 42 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80059834: /* 80059834 00056794 3B 5A 00 28 */ addi r26, r26, 0x28 lbl_80059838: /* 80059838 00056798 7C 1A D8 40 */ cmplw r26, r27 /* 8005983C 0005679C 40 82 FF BC */ bne lbl_800597F8 /* 80059840 000567A0 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80059844 000567A4 28 03 00 00 */ cmplwi r3, 0 /* 80059848 000567A8 41 82 00 08 */ beq lbl_80059850 /* 8005984C 000567AC 48 2B C0 E5 */ bl Free__7CMemoryFPCv lbl_80059850: /* 80059850 000567B0 93 FD 00 0C */ stw r31, 0xc(r29) /* 80059854 000567B4 93 DD 00 08 */ stw r30, 8(r29) lbl_80059858: /* 80059858 000567B8 BB 41 00 18 */ lmw r26, 0x18(r1) /* 8005985C 000567BC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80059860 000567C0 7C 08 03 A6 */ mtlr r0 /* 80059864 000567C4 38 21 00 30 */ addi r1, r1, 0x30 /* 80059868 000567C8 4E 80 00 20 */ blr .global sub_8005986c sub_8005986c: /* 8005986C 000567CC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059870 000567D0 7C 08 02 A6 */ mflr r0 /* 80059874 000567D4 90 01 00 34 */ stw r0, 0x34(r1) /* 80059878 000567D8 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 8005987C 000567DC 7C 9F 23 78 */ mr r31, r4 /* 80059880 000567E0 7C 7E 1B 78 */ mr r30, r3 /* 80059884 000567E4 80 03 00 08 */ lwz r0, 8(r3) /* 80059888 000567E8 7C 1F 00 00 */ cmpw r31, r0 /* 8005988C 000567EC 40 81 00 F0 */ ble lbl_8005997C /* 80059890 000567F0 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c /* 80059894 000567F4 40 82 00 0C */ bne lbl_800598A0 /* 80059898 000567F8 3B A0 00 00 */ li r29, 0 /* 8005989C 000567FC 48 00 00 1C */ b lbl_800598B8 lbl_800598A0: /* 800598A0 00056800 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 800598A4 00056804 38 A0 00 00 */ li r5, 0 /* 800598A8 00056808 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 800598AC 0005680C 38 84 00 01 */ addi r4, r4, 1 /* 800598B0 00056810 48 2B BF 69 */ bl __nwa__FUlPCcPCc /* 800598B4 00056814 7C 7D 1B 78 */ mr r29, r3 lbl_800598B8: /* 800598B8 00056818 80 7E 00 04 */ lwz r3, 4(r30) /* 800598BC 0005681C 7F A5 EB 78 */ mr r5, r29 /* 800598C0 00056820 80 DE 00 0C */ lwz r6, 0xc(r30) /* 800598C4 00056824 38 00 00 00 */ li r0, 0 /* 800598C8 00056828 54 63 18 38 */ slwi r3, r3, 3 /* 800598CC 0005682C 7C 86 1A 14 */ add r4, r6, r3 /* 800598D0 00056830 90 C1 00 10 */ stw r6, 0x10(r1) /* 800598D4 00056834 90 81 00 08 */ stw r4, 8(r1) /* 800598D8 00056838 90 81 00 0C */ stw r4, 0xc(r1) /* 800598DC 0005683C 90 C1 00 14 */ stw r6, 0x14(r1) /* 800598E0 00056840 48 00 00 28 */ b lbl_80059908 lbl_800598E4: /* 800598E4 00056844 28 05 00 00 */ cmplwi r5, 0 /* 800598E8 00056848 41 82 00 18 */ beq lbl_80059900 /* 800598EC 0005684C 88 66 00 00 */ lbz r3, 0(r6) /* 800598F0 00056850 98 65 00 00 */ stb r3, 0(r5) /* 800598F4 00056854 80 66 00 04 */ lwz r3, 4(r6) /* 800598F8 00056858 90 65 00 04 */ stw r3, 4(r5) /* 800598FC 0005685C 98 06 00 00 */ stb r0, 0(r6) lbl_80059900: /* 80059900 00056860 38 A5 00 08 */ addi r5, r5, 8 /* 80059904 00056864 38 C6 00 08 */ addi r6, r6, 8 lbl_80059908: /* 80059908 00056868 7C 06 20 40 */ cmplw r6, r4 /* 8005990C 0005686C 40 82 FF D8 */ bne lbl_800598E4 /* 80059910 00056870 80 1E 00 04 */ lwz r0, 4(r30) /* 80059914 00056874 83 7E 00 0C */ lwz r27, 0xc(r30) /* 80059918 00056878 54 00 18 38 */ slwi r0, r0, 3 /* 8005991C 0005687C 7F 9B 02 14 */ add r28, r27, r0 /* 80059920 00056880 48 00 00 3C */ b lbl_8005995C lbl_80059924: /* 80059924 00056884 28 1B 00 00 */ cmplwi r27, 0 /* 80059928 00056888 41 82 00 30 */ beq lbl_80059958 /* 8005992C 0005688C 88 1B 00 00 */ lbz r0, 0(r27) /* 80059930 00056890 28 00 00 00 */ cmplwi r0, 0 /* 80059934 00056894 41 82 00 24 */ beq lbl_80059958 /* 80059938 00056898 80 7B 00 04 */ lwz r3, 4(r27) /* 8005993C 0005689C 28 03 00 00 */ cmplwi r3, 0 /* 80059940 000568A0 41 82 00 18 */ beq lbl_80059958 /* 80059944 000568A4 81 83 00 00 */ lwz r12, 0(r3) /* 80059948 000568A8 38 80 00 01 */ li r4, 1 /* 8005994C 000568AC 81 8C 00 08 */ lwz r12, 8(r12) /* 80059950 000568B0 7D 89 03 A6 */ mtctr r12 /* 80059954 000568B4 4E 80 04 21 */ bctrl lbl_80059958: /* 80059958 000568B8 3B 7B 00 08 */ addi r27, r27, 8 lbl_8005995C: /* 8005995C 000568BC 7C 1B E0 40 */ cmplw r27, r28 /* 80059960 000568C0 40 82 FF C4 */ bne lbl_80059924 /* 80059964 000568C4 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80059968 000568C8 28 03 00 00 */ cmplwi r3, 0 /* 8005996C 000568CC 41 82 00 08 */ beq lbl_80059974 /* 80059970 000568D0 48 2B BF C1 */ bl Free__7CMemoryFPCv lbl_80059974: /* 80059974 000568D4 93 BE 00 0C */ stw r29, 0xc(r30) /* 80059978 000568D8 93 FE 00 08 */ stw r31, 8(r30) lbl_8005997C: /* 8005997C 000568DC BB 61 00 1C */ lmw r27, 0x1c(r1) /* 80059980 000568E0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80059984 000568E4 7C 08 03 A6 */ mtlr r0 /* 80059988 000568E8 38 21 00 30 */ addi r1, r1, 0x30 /* 8005998C 000568EC 4E 80 00 20 */ blr .global sub_80059990 sub_80059990: /* 80059990 000568F0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059994 000568F4 7C 08 02 A6 */ mflr r0 /* 80059998 000568F8 90 01 00 34 */ stw r0, 0x34(r1) /* 8005999C 000568FC BF 61 00 1C */ stmw r27, 0x1c(r1) /* 800599A0 00056900 7C 9F 23 78 */ mr r31, r4 /* 800599A4 00056904 7C 7E 1B 78 */ mr r30, r3 /* 800599A8 00056908 80 03 00 08 */ lwz r0, 8(r3) /* 800599AC 0005690C 7C 1F 00 00 */ cmpw r31, r0 /* 800599B0 00056910 40 81 00 F0 */ ble lbl_80059AA0 /* 800599B4 00056914 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c /* 800599B8 00056918 40 82 00 0C */ bne lbl_800599C4 /* 800599BC 0005691C 3B A0 00 00 */ li r29, 0 /* 800599C0 00056920 48 00 00 1C */ b lbl_800599DC lbl_800599C4: /* 800599C4 00056924 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 800599C8 00056928 38 A0 00 00 */ li r5, 0 /* 800599CC 0005692C 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 800599D0 00056930 38 84 00 01 */ addi r4, r4, 1 /* 800599D4 00056934 48 2B BE 45 */ bl __nwa__FUlPCcPCc /* 800599D8 00056938 7C 7D 1B 78 */ mr r29, r3 lbl_800599DC: /* 800599DC 0005693C 80 7E 00 04 */ lwz r3, 4(r30) /* 800599E0 00056940 7F A5 EB 78 */ mr r5, r29 /* 800599E4 00056944 80 DE 00 0C */ lwz r6, 0xc(r30) /* 800599E8 00056948 38 00 00 00 */ li r0, 0 /* 800599EC 0005694C 54 63 18 38 */ slwi r3, r3, 3 /* 800599F0 00056950 7C 86 1A 14 */ add r4, r6, r3 /* 800599F4 00056954 90 C1 00 10 */ stw r6, 0x10(r1) /* 800599F8 00056958 90 81 00 08 */ stw r4, 8(r1) /* 800599FC 0005695C 90 81 00 0C */ stw r4, 0xc(r1) /* 80059A00 00056960 90 C1 00 14 */ stw r6, 0x14(r1) /* 80059A04 00056964 48 00 00 28 */ b lbl_80059A2C lbl_80059A08: /* 80059A08 00056968 28 05 00 00 */ cmplwi r5, 0 /* 80059A0C 0005696C 41 82 00 18 */ beq lbl_80059A24 /* 80059A10 00056970 88 66 00 00 */ lbz r3, 0(r6) /* 80059A14 00056974 98 65 00 00 */ stb r3, 0(r5) /* 80059A18 00056978 80 66 00 04 */ lwz r3, 4(r6) /* 80059A1C 0005697C 90 65 00 04 */ stw r3, 4(r5) /* 80059A20 00056980 98 06 00 00 */ stb r0, 0(r6) lbl_80059A24: /* 80059A24 00056984 38 A5 00 08 */ addi r5, r5, 8 /* 80059A28 00056988 38 C6 00 08 */ addi r6, r6, 8 lbl_80059A2C: /* 80059A2C 0005698C 7C 06 20 40 */ cmplw r6, r4 /* 80059A30 00056990 40 82 FF D8 */ bne lbl_80059A08 /* 80059A34 00056994 80 1E 00 04 */ lwz r0, 4(r30) /* 80059A38 00056998 83 7E 00 0C */ lwz r27, 0xc(r30) /* 80059A3C 0005699C 54 00 18 38 */ slwi r0, r0, 3 /* 80059A40 000569A0 7F 9B 02 14 */ add r28, r27, r0 /* 80059A44 000569A4 48 00 00 3C */ b lbl_80059A80 lbl_80059A48: /* 80059A48 000569A8 28 1B 00 00 */ cmplwi r27, 0 /* 80059A4C 000569AC 41 82 00 30 */ beq lbl_80059A7C /* 80059A50 000569B0 88 1B 00 00 */ lbz r0, 0(r27) /* 80059A54 000569B4 28 00 00 00 */ cmplwi r0, 0 /* 80059A58 000569B8 41 82 00 24 */ beq lbl_80059A7C /* 80059A5C 000569BC 80 7B 00 04 */ lwz r3, 4(r27) /* 80059A60 000569C0 28 03 00 00 */ cmplwi r3, 0 /* 80059A64 000569C4 41 82 00 18 */ beq lbl_80059A7C /* 80059A68 000569C8 81 83 00 00 */ lwz r12, 0(r3) /* 80059A6C 000569CC 38 80 00 01 */ li r4, 1 /* 80059A70 000569D0 81 8C 00 08 */ lwz r12, 8(r12) /* 80059A74 000569D4 7D 89 03 A6 */ mtctr r12 /* 80059A78 000569D8 4E 80 04 21 */ bctrl lbl_80059A7C: /* 80059A7C 000569DC 3B 7B 00 08 */ addi r27, r27, 8 lbl_80059A80: /* 80059A80 000569E0 7C 1B E0 40 */ cmplw r27, r28 /* 80059A84 000569E4 40 82 FF C4 */ bne lbl_80059A48 /* 80059A88 000569E8 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80059A8C 000569EC 28 03 00 00 */ cmplwi r3, 0 /* 80059A90 000569F0 41 82 00 08 */ beq lbl_80059A98 /* 80059A94 000569F4 48 2B BE 9D */ bl Free__7CMemoryFPCv lbl_80059A98: /* 80059A98 000569F8 93 BE 00 0C */ stw r29, 0xc(r30) /* 80059A9C 000569FC 93 FE 00 08 */ stw r31, 8(r30) lbl_80059AA0: /* 80059AA0 00056A00 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 80059AA4 00056A04 80 01 00 34 */ lwz r0, 0x34(r1) /* 80059AA8 00056A08 7C 08 03 A6 */ mtlr r0 /* 80059AAC 00056A0C 38 21 00 30 */ addi r1, r1, 0x30 /* 80059AB0 00056A10 4E 80 00 20 */ blr .global "reserve__Q24rstl56vectorFi" "reserve__Q24rstl56vectorFi": /* 80059AB4 00056A14 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059AB8 00056A18 7C 08 02 A6 */ mflr r0 /* 80059ABC 00056A1C 90 01 00 34 */ stw r0, 0x34(r1) /* 80059AC0 00056A20 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80059AC4 00056A24 7C 9F 23 78 */ mr r31, r4 /* 80059AC8 00056A28 93 C1 00 28 */ stw r30, 0x28(r1) /* 80059ACC 00056A2C 7C 7E 1B 78 */ mr r30, r3 /* 80059AD0 00056A30 93 A1 00 24 */ stw r29, 0x24(r1) /* 80059AD4 00056A34 80 03 00 08 */ lwz r0, 8(r3) /* 80059AD8 00056A38 7C 1F 00 00 */ cmpw r31, r0 /* 80059ADC 00056A3C 40 81 00 BC */ ble lbl_80059B98 /* 80059AE0 00056A40 57 E3 20 37 */ rlwinm. r3, r31, 4, 0, 0x1b /* 80059AE4 00056A44 40 82 00 0C */ bne lbl_80059AF0 /* 80059AE8 00056A48 3B A0 00 00 */ li r29, 0 /* 80059AEC 00056A4C 48 00 00 1C */ b lbl_80059B08 lbl_80059AF0: /* 80059AF0 00056A50 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80059AF4 00056A54 38 A0 00 00 */ li r5, 0 /* 80059AF8 00056A58 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 80059AFC 00056A5C 38 84 00 01 */ addi r4, r4, 1 /* 80059B00 00056A60 48 2B BD 19 */ bl __nwa__FUlPCcPCc /* 80059B04 00056A64 7C 7D 1B 78 */ mr r29, r3 lbl_80059B08: /* 80059B08 00056A68 80 1E 00 04 */ lwz r0, 4(r30) /* 80059B0C 00056A6C 7F A5 EB 78 */ mr r5, r29 /* 80059B10 00056A70 80 DE 00 0C */ lwz r6, 0xc(r30) /* 80059B14 00056A74 54 00 20 36 */ slwi r0, r0, 4 /* 80059B18 00056A78 7C 86 02 14 */ add r4, r6, r0 /* 80059B1C 00056A7C 90 C1 00 10 */ stw r6, 0x10(r1) /* 80059B20 00056A80 90 81 00 08 */ stw r4, 8(r1) /* 80059B24 00056A84 90 81 00 0C */ stw r4, 0xc(r1) /* 80059B28 00056A88 90 C1 00 14 */ stw r6, 0x14(r1) /* 80059B2C 00056A8C 48 00 00 2C */ b lbl_80059B58 lbl_80059B30: /* 80059B30 00056A90 28 05 00 00 */ cmplwi r5, 0 /* 80059B34 00056A94 41 82 00 1C */ beq lbl_80059B50 /* 80059B38 00056A98 80 06 00 00 */ lwz r0, 0(r6) /* 80059B3C 00056A9C 90 05 00 00 */ stw r0, 0(r5) /* 80059B40 00056AA0 80 06 00 08 */ lwz r0, 8(r6) /* 80059B44 00056AA4 80 66 00 0C */ lwz r3, 0xc(r6) /* 80059B48 00056AA8 90 65 00 0C */ stw r3, 0xc(r5) /* 80059B4C 00056AAC 90 05 00 08 */ stw r0, 8(r5) lbl_80059B50: /* 80059B50 00056AB0 38 A5 00 10 */ addi r5, r5, 0x10 /* 80059B54 00056AB4 38 C6 00 10 */ addi r6, r6, 0x10 lbl_80059B58: /* 80059B58 00056AB8 7C 06 20 40 */ cmplw r6, r4 /* 80059B5C 00056ABC 40 82 FF D4 */ bne lbl_80059B30 /* 80059B60 00056AC0 80 1E 00 04 */ lwz r0, 4(r30) /* 80059B64 00056AC4 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80059B68 00056AC8 54 00 20 36 */ slwi r0, r0, 4 /* 80059B6C 00056ACC 7C 64 1B 78 */ mr r4, r3 /* 80059B70 00056AD0 7C 03 02 14 */ add r0, r3, r0 /* 80059B74 00056AD4 48 00 00 08 */ b lbl_80059B7C lbl_80059B78: /* 80059B78 00056AD8 38 84 00 10 */ addi r4, r4, 0x10 lbl_80059B7C: /* 80059B7C 00056ADC 7C 04 00 40 */ cmplw r4, r0 /* 80059B80 00056AE0 40 82 FF F8 */ bne lbl_80059B78 /* 80059B84 00056AE4 28 03 00 00 */ cmplwi r3, 0 /* 80059B88 00056AE8 41 82 00 08 */ beq lbl_80059B90 /* 80059B8C 00056AEC 48 2B BD A5 */ bl Free__7CMemoryFPCv lbl_80059B90: /* 80059B90 00056AF0 93 BE 00 0C */ stw r29, 0xc(r30) /* 80059B94 00056AF4 93 FE 00 08 */ stw r31, 8(r30) lbl_80059B98: /* 80059B98 00056AF8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80059B9C 00056AFC 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80059BA0 00056B00 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80059BA4 00056B04 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80059BA8 00056B08 7C 08 03 A6 */ mtlr r0 /* 80059BAC 00056B0C 38 21 00 30 */ addi r1, r1, 0x30 /* 80059BB0 00056B10 4E 80 00 20 */ blr .global "reserve__Q24rstl110vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Fi" "reserve__Q24rstl110vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Fi": /* 80059BB4 00056B14 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059BB8 00056B18 7C 08 02 A6 */ mflr r0 /* 80059BBC 00056B1C 90 01 00 34 */ stw r0, 0x34(r1) /* 80059BC0 00056B20 BF 41 00 18 */ stmw r26, 0x18(r1) /* 80059BC4 00056B24 7C 9F 23 78 */ mr r31, r4 /* 80059BC8 00056B28 7C 7E 1B 78 */ mr r30, r3 /* 80059BCC 00056B2C 80 03 00 08 */ lwz r0, 8(r3) /* 80059BD0 00056B30 7C 1F 00 00 */ cmpw r31, r0 /* 80059BD4 00056B34 40 81 00 C0 */ ble lbl_80059C94 /* 80059BD8 00056B38 57 E3 20 37 */ rlwinm. r3, r31, 4, 0, 0x1b /* 80059BDC 00056B3C 40 82 00 0C */ bne lbl_80059BE8 /* 80059BE0 00056B40 3B 80 00 00 */ li r28, 0 /* 80059BE4 00056B44 48 00 00 1C */ b lbl_80059C00 lbl_80059BE8: /* 80059BE8 00056B48 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80059BEC 00056B4C 38 A0 00 00 */ li r5, 0 /* 80059BF0 00056B50 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 80059BF4 00056B54 38 84 00 01 */ addi r4, r4, 1 /* 80059BF8 00056B58 48 2B BC 21 */ bl __nwa__FUlPCcPCc /* 80059BFC 00056B5C 7C 7C 1B 78 */ mr r28, r3 lbl_80059C00: /* 80059C00 00056B60 80 1E 00 04 */ lwz r0, 4(r30) /* 80059C04 00056B64 7F 9B E3 78 */ mr r27, r28 /* 80059C08 00056B68 83 5E 00 0C */ lwz r26, 0xc(r30) /* 80059C0C 00056B6C 54 00 20 36 */ slwi r0, r0, 4 /* 80059C10 00056B70 7F BA 02 14 */ add r29, r26, r0 /* 80059C14 00056B74 93 41 00 10 */ stw r26, 0x10(r1) /* 80059C18 00056B78 93 A1 00 08 */ stw r29, 8(r1) /* 80059C1C 00056B7C 93 A1 00 0C */ stw r29, 0xc(r1) /* 80059C20 00056B80 93 41 00 14 */ stw r26, 0x14(r1) /* 80059C24 00056B84 48 00 00 20 */ b lbl_80059C44 lbl_80059C28: /* 80059C28 00056B88 28 1B 00 00 */ cmplwi r27, 0 /* 80059C2C 00056B8C 41 82 00 10 */ beq lbl_80059C3C /* 80059C30 00056B90 7F 63 DB 78 */ mr r3, r27 /* 80059C34 00056B94 7F 44 D3 78 */ mr r4, r26 /* 80059C38 00056B98 48 2E 45 29 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_80059C3C: /* 80059C3C 00056B9C 3B 7B 00 10 */ addi r27, r27, 0x10 /* 80059C40 00056BA0 3B 5A 00 10 */ addi r26, r26, 0x10 lbl_80059C44: /* 80059C44 00056BA4 7C 1A E8 40 */ cmplw r26, r29 /* 80059C48 00056BA8 40 82 FF E0 */ bne lbl_80059C28 /* 80059C4C 00056BAC 80 1E 00 04 */ lwz r0, 4(r30) /* 80059C50 00056BB0 83 5E 00 0C */ lwz r26, 0xc(r30) /* 80059C54 00056BB4 54 00 20 36 */ slwi r0, r0, 4 /* 80059C58 00056BB8 7F 7A 02 14 */ add r27, r26, r0 /* 80059C5C 00056BBC 48 00 00 18 */ b lbl_80059C74 lbl_80059C60: /* 80059C60 00056BC0 28 1A 00 00 */ cmplwi r26, 0 /* 80059C64 00056BC4 41 82 00 0C */ beq lbl_80059C70 /* 80059C68 00056BC8 7F 43 D3 78 */ mr r3, r26 /* 80059C6C 00056BCC 48 2E 3E 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80059C70: /* 80059C70 00056BD0 3B 5A 00 10 */ addi r26, r26, 0x10 lbl_80059C74: /* 80059C74 00056BD4 7C 1A D8 40 */ cmplw r26, r27 /* 80059C78 00056BD8 40 82 FF E8 */ bne lbl_80059C60 /* 80059C7C 00056BDC 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80059C80 00056BE0 28 03 00 00 */ cmplwi r3, 0 /* 80059C84 00056BE4 41 82 00 08 */ beq lbl_80059C8C /* 80059C88 00056BE8 48 2B BC A9 */ bl Free__7CMemoryFPCv lbl_80059C8C: /* 80059C8C 00056BEC 93 9E 00 0C */ stw r28, 0xc(r30) /* 80059C90 00056BF0 93 FE 00 08 */ stw r31, 8(r30) lbl_80059C94: /* 80059C94 00056BF4 BB 41 00 18 */ lmw r26, 0x18(r1) /* 80059C98 00056BF8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80059C9C 00056BFC 7C 08 03 A6 */ mtlr r0 /* 80059CA0 00056C00 38 21 00 30 */ addi r1, r1, 0x30 /* 80059CA4 00056C04 4E 80 00 20 */ blr .global "reserve__Q24rstl36vectorFi" "reserve__Q24rstl36vectorFi": /* 80059CA8 00056C08 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059CAC 00056C0C 7C 08 02 A6 */ mflr r0 /* 80059CB0 00056C10 90 01 00 34 */ stw r0, 0x34(r1) /* 80059CB4 00056C14 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80059CB8 00056C18 7C 9F 23 78 */ mr r31, r4 /* 80059CBC 00056C1C 93 C1 00 28 */ stw r30, 0x28(r1) /* 80059CC0 00056C20 7C 7E 1B 78 */ mr r30, r3 /* 80059CC4 00056C24 93 A1 00 24 */ stw r29, 0x24(r1) /* 80059CC8 00056C28 80 03 00 08 */ lwz r0, 8(r3) /* 80059CCC 00056C2C 7C 1F 00 00 */ cmpw r31, r0 /* 80059CD0 00056C30 40 81 00 AC */ ble lbl_80059D7C /* 80059CD4 00056C34 57 E3 10 3B */ rlwinm. r3, r31, 2, 0, 0x1d /* 80059CD8 00056C38 40 82 00 0C */ bne lbl_80059CE4 /* 80059CDC 00056C3C 3B A0 00 00 */ li r29, 0 /* 80059CE0 00056C40 48 00 00 1C */ b lbl_80059CFC lbl_80059CE4: /* 80059CE4 00056C44 3C 80 80 3D */ lis r4, lbl_803CCF70@ha /* 80059CE8 00056C48 38 A0 00 00 */ li r5, 0 /* 80059CEC 00056C4C 38 84 CF 70 */ addi r4, r4, lbl_803CCF70@l /* 80059CF0 00056C50 38 84 00 01 */ addi r4, r4, 1 /* 80059CF4 00056C54 48 2B BB 25 */ bl __nwa__FUlPCcPCc /* 80059CF8 00056C58 7C 7D 1B 78 */ mr r29, r3 lbl_80059CFC: /* 80059CFC 00056C5C 80 1E 00 04 */ lwz r0, 4(r30) /* 80059D00 00056C60 7F A4 EB 78 */ mr r4, r29 /* 80059D04 00056C64 80 BE 00 0C */ lwz r5, 0xc(r30) /* 80059D08 00056C68 54 00 10 3A */ slwi r0, r0, 2 /* 80059D0C 00056C6C 7C 65 02 14 */ add r3, r5, r0 /* 80059D10 00056C70 90 A1 00 10 */ stw r5, 0x10(r1) /* 80059D14 00056C74 90 61 00 08 */ stw r3, 8(r1) /* 80059D18 00056C78 90 61 00 0C */ stw r3, 0xc(r1) /* 80059D1C 00056C7C 90 A1 00 14 */ stw r5, 0x14(r1) /* 80059D20 00056C80 48 00 00 1C */ b lbl_80059D3C lbl_80059D24: /* 80059D24 00056C84 28 04 00 00 */ cmplwi r4, 0 /* 80059D28 00056C88 41 82 00 0C */ beq lbl_80059D34 /* 80059D2C 00056C8C 80 05 00 00 */ lwz r0, 0(r5) /* 80059D30 00056C90 90 04 00 00 */ stw r0, 0(r4) lbl_80059D34: /* 80059D34 00056C94 38 84 00 04 */ addi r4, r4, 4 /* 80059D38 00056C98 38 A5 00 04 */ addi r5, r5, 4 lbl_80059D3C: /* 80059D3C 00056C9C 7C 05 18 40 */ cmplw r5, r3 /* 80059D40 00056CA0 40 82 FF E4 */ bne lbl_80059D24 /* 80059D44 00056CA4 80 1E 00 04 */ lwz r0, 4(r30) /* 80059D48 00056CA8 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80059D4C 00056CAC 54 00 10 3A */ slwi r0, r0, 2 /* 80059D50 00056CB0 7C 64 1B 78 */ mr r4, r3 /* 80059D54 00056CB4 7C 03 02 14 */ add r0, r3, r0 /* 80059D58 00056CB8 48 00 00 08 */ b lbl_80059D60 lbl_80059D5C: /* 80059D5C 00056CBC 38 84 00 04 */ addi r4, r4, 4 lbl_80059D60: /* 80059D60 00056CC0 7C 04 00 40 */ cmplw r4, r0 /* 80059D64 00056CC4 40 82 FF F8 */ bne lbl_80059D5C /* 80059D68 00056CC8 28 03 00 00 */ cmplwi r3, 0 /* 80059D6C 00056CCC 41 82 00 08 */ beq lbl_80059D74 /* 80059D70 00056CD0 48 2B BB C1 */ bl Free__7CMemoryFPCv lbl_80059D74: /* 80059D74 00056CD4 93 BE 00 0C */ stw r29, 0xc(r30) /* 80059D78 00056CD8 93 FE 00 08 */ stw r31, 8(r30) lbl_80059D7C: /* 80059D7C 00056CDC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80059D80 00056CE0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80059D84 00056CE4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80059D88 00056CE8 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80059D8C 00056CEC 7C 08 03 A6 */ mtlr r0 /* 80059D90 00056CF0 38 21 00 30 */ addi r1, r1, 0x30 /* 80059D94 00056CF4 4E 80 00 20 */ blr .global sub_80059d98 sub_80059d98: /* 80059D98 00056CF8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059D9C 00056CFC 7C 08 02 A6 */ mflr r0 /* 80059DA0 00056D00 90 01 00 34 */ stw r0, 0x34(r1) /* 80059DA4 00056D04 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80059DA8 00056D08 93 C1 00 28 */ stw r30, 0x28(r1) /* 80059DAC 00056D0C 93 A1 00 24 */ stw r29, 0x24(r1) /* 80059DB0 00056D10 93 81 00 20 */ stw r28, 0x20(r1) /* 80059DB4 00056D14 7C 7C 1B 78 */ mr r28, r3 /* 80059DB8 00056D18 80 83 00 00 */ lwz r4, 0(r3) /* 80059DBC 00056D1C 80 64 00 04 */ lwz r3, 4(r4) /* 80059DC0 00056D20 34 03 FF FF */ addic. r0, r3, -1 /* 80059DC4 00056D24 90 04 00 04 */ stw r0, 4(r4) /* 80059DC8 00056D28 41 81 00 7C */ bgt lbl_80059E44 /* 80059DCC 00056D2C 80 7C 00 00 */ lwz r3, 0(r28) /* 80059DD0 00056D30 83 A3 00 00 */ lwz r29, 0(r3) /* 80059DD4 00056D34 28 1D 00 00 */ cmplwi r29, 0 /* 80059DD8 00056D38 41 82 00 5C */ beq lbl_80059E34 /* 80059DDC 00056D3C 80 1D 00 04 */ lwz r0, 4(r29) /* 80059DE0 00056D40 83 DD 00 0C */ lwz r30, 0xc(r29) /* 80059DE4 00056D44 54 00 20 36 */ slwi r0, r0, 4 /* 80059DE8 00056D48 7F FE 02 14 */ add r31, r30, r0 /* 80059DEC 00056D4C 93 C1 00 0C */ stw r30, 0xc(r1) /* 80059DF0 00056D50 93 E1 00 14 */ stw r31, 0x14(r1) /* 80059DF4 00056D54 93 E1 00 10 */ stw r31, 0x10(r1) /* 80059DF8 00056D58 93 C1 00 08 */ stw r30, 8(r1) /* 80059DFC 00056D5C 48 00 00 18 */ b lbl_80059E14 lbl_80059E00: /* 80059E00 00056D60 28 1E 00 00 */ cmplwi r30, 0 /* 80059E04 00056D64 41 82 00 0C */ beq lbl_80059E10 /* 80059E08 00056D68 7F C3 F3 78 */ mr r3, r30 /* 80059E0C 00056D6C 48 2E 3C D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80059E10: /* 80059E10 00056D70 3B DE 00 10 */ addi r30, r30, 0x10 lbl_80059E14: /* 80059E14 00056D74 7C 1E F8 40 */ cmplw r30, r31 /* 80059E18 00056D78 40 82 FF E8 */ bne lbl_80059E00 /* 80059E1C 00056D7C 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80059E20 00056D80 28 03 00 00 */ cmplwi r3, 0 /* 80059E24 00056D84 41 82 00 08 */ beq lbl_80059E2C /* 80059E28 00056D88 48 2B BB 09 */ bl Free__7CMemoryFPCv lbl_80059E2C: /* 80059E2C 00056D8C 7F A3 EB 78 */ mr r3, r29 /* 80059E30 00056D90 48 2B BB 01 */ bl Free__7CMemoryFPCv lbl_80059E34: /* 80059E34 00056D94 80 7C 00 00 */ lwz r3, 0(r28) /* 80059E38 00056D98 28 03 00 00 */ cmplwi r3, 0 /* 80059E3C 00056D9C 41 82 00 08 */ beq lbl_80059E44 /* 80059E40 00056DA0 48 2B BA F1 */ bl Free__7CMemoryFPCv lbl_80059E44: /* 80059E44 00056DA4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80059E48 00056DA8 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80059E4C 00056DAC 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80059E50 00056DB0 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80059E54 00056DB4 83 81 00 20 */ lwz r28, 0x20(r1) /* 80059E58 00056DB8 7C 08 03 A6 */ mtlr r0 /* 80059E5C 00056DBC 38 21 00 30 */ addi r1, r1, 0x30 /* 80059E60 00056DC0 4E 80 00 20 */ blr .global sub_80059e64 sub_80059e64: /* 80059E64 00056DC4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80059E68 00056DC8 7C 08 02 A6 */ mflr r0 /* 80059E6C 00056DCC 90 01 00 24 */ stw r0, 0x24(r1) /* 80059E70 00056DD0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80059E74 00056DD4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80059E78 00056DD8 7C 7E 1B 78 */ mr r30, r3 /* 80059E7C 00056DDC 80 83 00 00 */ lwz r4, 0(r3) /* 80059E80 00056DE0 80 64 00 04 */ lwz r3, 4(r4) /* 80059E84 00056DE4 34 03 FF FF */ addic. r0, r3, -1 /* 80059E88 00056DE8 90 04 00 04 */ stw r0, 4(r4) /* 80059E8C 00056DEC 41 81 00 6C */ bgt lbl_80059EF8 /* 80059E90 00056DF0 80 7E 00 00 */ lwz r3, 0(r30) /* 80059E94 00056DF4 83 E3 00 00 */ lwz r31, 0(r3) /* 80059E98 00056DF8 28 1F 00 00 */ cmplwi r31, 0 /* 80059E9C 00056DFC 41 82 00 4C */ beq lbl_80059EE8 /* 80059EA0 00056E00 80 1F 00 04 */ lwz r0, 4(r31) /* 80059EA4 00056E04 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80059EA8 00056E08 54 00 10 3A */ slwi r0, r0, 2 /* 80059EAC 00056E0C 7C 03 02 14 */ add r0, r3, r0 /* 80059EB0 00056E10 90 61 00 0C */ stw r3, 0xc(r1) /* 80059EB4 00056E14 7C 64 1B 78 */ mr r4, r3 /* 80059EB8 00056E18 90 01 00 14 */ stw r0, 0x14(r1) /* 80059EBC 00056E1C 90 01 00 10 */ stw r0, 0x10(r1) /* 80059EC0 00056E20 90 61 00 08 */ stw r3, 8(r1) /* 80059EC4 00056E24 48 00 00 08 */ b lbl_80059ECC lbl_80059EC8: /* 80059EC8 00056E28 38 84 00 04 */ addi r4, r4, 4 lbl_80059ECC: /* 80059ECC 00056E2C 7C 04 00 40 */ cmplw r4, r0 /* 80059ED0 00056E30 40 82 FF F8 */ bne lbl_80059EC8 /* 80059ED4 00056E34 28 03 00 00 */ cmplwi r3, 0 /* 80059ED8 00056E38 41 82 00 08 */ beq lbl_80059EE0 /* 80059EDC 00056E3C 48 2B BA 55 */ bl Free__7CMemoryFPCv lbl_80059EE0: /* 80059EE0 00056E40 7F E3 FB 78 */ mr r3, r31 /* 80059EE4 00056E44 48 2B BA 4D */ bl Free__7CMemoryFPCv lbl_80059EE8: /* 80059EE8 00056E48 80 7E 00 00 */ lwz r3, 0(r30) /* 80059EEC 00056E4C 28 03 00 00 */ cmplwi r3, 0 /* 80059EF0 00056E50 41 82 00 08 */ beq lbl_80059EF8 /* 80059EF4 00056E54 48 2B BA 3D */ bl Free__7CMemoryFPCv lbl_80059EF8: /* 80059EF8 00056E58 80 01 00 24 */ lwz r0, 0x24(r1) /* 80059EFC 00056E5C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80059F00 00056E60 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80059F04 00056E64 7C 08 03 A6 */ mtlr r0 /* 80059F08 00056E68 38 21 00 20 */ addi r1, r1, 0x20 /* 80059F0C 00056E6C 4E 80 00 20 */ blr .global __sinit_CWorld_cpp __sinit_CWorld_cpp: /* 80059F10 00056E70 38 00 00 00 */ li r0, 0 /* 80059F14 00056E74 90 0D A2 18 */ stw r0, lbl_805A8DD8@sda21(r13) /* 80059F18 00056E78 90 0D A2 1C */ stw r0, lbl_805A8DDC@sda21(r13) /* 80059F1C 00056E7C 4E 80 00 20 */ blr .section .rodata .balign 8 .global lbl_803CCF70 lbl_803CCF70: # ROM: 0x3C9F70 .4byte 0x003F3F28 .4byte 0x3F3F2900