.include "macros.inc" .section .bss .balign 8 .global lbl_8045C550 lbl_8045C550: .skip 0x30 .global lbl_8045C580 lbl_8045C580: .skip 0x18 .global lbl_8045C598 lbl_8045C598: .skip 0xC .global lbl_8045C5A4 lbl_8045C5A4: .skip 0x10 .global lbl_8045C5B4 lbl_8045C5B4: .skip 0xF3C8 .global lbl_8046B97C lbl_8046B97C: .skip 0xA3C .section .sdata .balign 8 .global lbl_805A6E20 lbl_805A6E20: # ROM: 0x3F47C0 .4byte 0 .global lbl_805A6E24 lbl_805A6E24: # ROM: 0x3F47C4 .4byte 0x00000020 .global lbl_805A6E28 lbl_805A6E28: # ROM: 0x3F47C8 .4byte 0x00000013 .global lbl_805A6E2C lbl_805A6E2C: # ROM: 0x3F47CC .4byte 0x00000025 .global lbl_805A6E30 lbl_805A6E30: # ROM: 0x3F47D0 .4byte 0x00000022 .global lbl_805A6E34 lbl_805A6E34: # ROM: 0x3F47D4 .4byte 0x00000013 .global lbl_805A6E38 lbl_805A6E38: # ROM: 0x3F47D8 .4byte 0x00000012 .global lbl_805A6E3C lbl_805A6E3C: # ROM: 0x3F47DC .4byte 0x00000020 .global lbl_805A6E40 lbl_805A6E40: # ROM: 0x3F47E0 .4byte 0x0000002A .global lbl_805A6E44 lbl_805A6E44: # ROM: 0x3F47E4 .4byte 0x00000021 .global lbl_805A6E48 lbl_805A6E48: # ROM: 0x3F47E8 .4byte 0 .global lbl_805A6E4C lbl_805A6E4C: # ROM: 0x3F47EC .float 1.0 .global lbl_805A6E50 lbl_805A6E50: # ROM: 0x3F47F0 .4byte 0 .global lbl_805A6E54 lbl_805A6E54: # ROM: 0x3F47F4 .float 1.0 .global lbl_805A6E58 lbl_805A6E58: # ROM: 0x3F47F8 .4byte 0x00000030 .global lbl_805A6E5C lbl_805A6E5C: # ROM: 0x3F47FC .byte 0x01 .global lbl_805A6E5D lbl_805A6E5D: # ROM: 0x3F47FD .byte 0x00 .global lbl_805A6E5E lbl_805A6E5E: # ROM: 0x3F47FE .byte 0x01 .global lbl_805A6E5F lbl_805A6E5F: # ROM: 0x3F47FF .byte 0x01 .global lbl_805A6E60 lbl_805A6E60: # ROM: 0x3F4800 .4byte 0x01000000 .global lbl_805A6E64 lbl_805A6E64: # ROM: 0x3F4804 .4byte 0 .section .sbss .balign 8 # CStateManager .global lbl_805A8D98 lbl_805A8D98: .skip 0x4 .global lbl_805A8D9C lbl_805A8D9C: .skip 0x4 .global lbl_805A8DA0 lbl_805A8DA0: .skip 0x1 .global lbl_805A8DA1 lbl_805A8DA1: .skip 0x7 .global lbl_805A8DA8 lbl_805A8DA8: .skip 0x4 .global lbl_805A8DAC lbl_805A8DAC: .skip 0x4 .global lbl_805A8DB0 lbl_805A8DB0: .skip 0x8 .global lbl_805A8DB8 lbl_805A8DB8: .skip 0x4 .global lbl_805A8DBC lbl_805A8DBC: .skip 0x4 .global lbl_805A8DC0 lbl_805A8DC0: .skip 0x4 .global lbl_805A8DC4 lbl_805A8DC4: .skip 0x1 .global lbl_805A8DC5 lbl_805A8DC5: .skip 0x3 .global lbl_805A8DC8 lbl_805A8DC8: .skip 0x4 .global lbl_805A8DCC lbl_805A8DCC: .skip 0x4 # TOneStatic .global lbl_805A8DD0 lbl_805A8DD0: .skip 0x4 .global lbl_805A8DD4 lbl_805A8DD4: .skip 0x4 .section .sdata2, "a" .balign 8 .global lbl_805AA260 lbl_805AA260: # ROM: 0x3F6B00 .4byte 0x00000001 .global lbl_805AA264 lbl_805AA264: # ROM: 0x3F6B04 .float 2.0 .float 4.0 .global lbl_805AA26C lbl_805AA26C: # ROM: 0x3F6B0C .float 1.0 .float 2.0 .global lbl_805AA274 lbl_805AA274: # ROM: 0x3F6B14 .float 0.75 .float 1.0 .global lbl_805AA27C lbl_805AA27C: # ROM: 0x3F6B1C .asciz "?&ff?@" .balign 4 .global lbl_805AA284 lbl_805AA284: # ROM: 0x3F6B24 .float 1.0 .global lbl_805AA288 lbl_805AA288: # ROM: 0x3F6B28 .4byte 0 .global lbl_805AA28C lbl_805AA28C: # ROM: 0x3F6B2C .4byte 0x7F7FFFFF .global lbl_805AA290 lbl_805AA290: # ROM: 0x3F6B30 .float 0.25 .global lbl_805AA294 lbl_805AA294: # ROM: 0x3F6B34 .float 2.0 .global lbl_805AA298 lbl_805AA298: # ROM: 0x3F6B38 .float 8.0 .global lbl_805AA29C lbl_805AA29C: # ROM: 0x3F6B3C .float 0.5 .global lbl_805AA2A0 lbl_805AA2A0: # ROM: 0x3F6B40 .float 0.125 .global lbl_805AA2A4 lbl_805AA2A4: # ROM: 0x3F6B44 .float 1.1920929E-7 .global lbl_805AA2A8 lbl_805AA2A8: # ROM: 0x3F6B48 .float 1.1920929E-7 .global lbl_805AA2AC lbl_805AA2AC: # ROM: 0x3F6B4C .float 0.2 .global lbl_805AA2B0 lbl_805AA2B0: # ROM: 0x3F6B50 .float 0.75 .global lbl_805AA2B4 lbl_805AA2B4: # ROM: 0x3F6B54 .float 15.0 .global lbl_805AA2B8 lbl_805AA2B8: # ROM: 0x3F6B58 .4byte 0xC1400000 .global lbl_805AA2BC lbl_805AA2BC: # ROM: 0x3F6B5C .4byte 0x40600000 .global lbl_805AA2C0 lbl_805AA2C0: # ROM: 0x3F6B60 .float -1.0 .4byte 0 .global lbl_805AA2C8 lbl_805AA2C8: # ROM: 0x3F6B68 .double 4.503601774854144E15 .global lbl_805AA2D0 lbl_805AA2D0: # ROM: 0x3F6B70 .4byte 0x40E00000 .global lbl_805AA2D4 lbl_805AA2D4: # ROM: 0x3F6B74 .4byte 0x3D4CCCCD .global lbl_805AA2D8 lbl_805AA2D8: # ROM: 0x3F6B78 .float 255.0 .global lbl_805AA2DC lbl_805AA2DC: # ROM: 0x3F6B7C .float 0.017453292 .global lbl_805AA2E0 lbl_805AA2E0: # ROM: 0x3F6B80 .4byte 0x42C80000 .global lbl_805AA2E4 lbl_805AA2E4: # ROM: 0x3F6B84 .4byte 0x3C800000 .global lbl_805AA2E8 lbl_805AA2E8: # ROM: 0x3F6B88 .4byte 0x3D000000 .global lbl_805AA2EC lbl_805AA2EC: # ROM: 0x3F6B8C .4byte 0x40400000 .global lbl_805AA2F0 lbl_805AA2F0: # ROM: 0x3F6B90 .float 6.2831855 .global lbl_805AA2F4 lbl_805AA2F4: # ROM: 0x3F6B94 .4byte 0x3B360B61 .global lbl_805AA2F8 lbl_805AA2F8: # ROM: 0x3F6B98 .4byte 0x43B40000 .global lbl_805AA2FC lbl_805AA2FC: # ROM: 0x3F6B9C .4byte 0x3E22F983 .global lbl_805AA300 lbl_805AA300: # ROM: 0x3F6BA0 .4byte 0x447A0000 .global lbl_805AA304 lbl_805AA304: # ROM: 0x3F6BA4 .4byte 0x43FA0000 .global lbl_805AA308 lbl_805AA308: # ROM: 0x3F6BA8 .4byte 0x420C0000 .global lbl_805AA30C lbl_805AA30C: # ROM: 0x3F6BAC .4byte 0x428C0000 .global lbl_805AA310 lbl_805AA310: # ROM: 0x3F6BB0 .4byte 0x40490FDB .global lbl_805AA314 lbl_805AA314: # ROM: 0x3F6BB4 .float 1.5 .global lbl_805AA318 lbl_805AA318: # ROM: 0x3F6BB8 .float 1.0E-4 .global lbl_805AA31C lbl_805AA31C: # ROM: 0x3F6BBC .4byte 0x3EB504F3 .global lbl_805AA320 lbl_805AA320: # ROM: 0x3F6BC0 .float 0.15 .global lbl_805AA324 lbl_805AA324: # ROM: 0x3F6BC4 .4byte 0x3F19999A .global lbl_805AA328 lbl_805AA328: # ROM: 0x3F6BC8 .float 0.4 .4byte 0 .global lbl_805AA330 lbl_805AA330: # ROM: 0x3F6BD0 .double 9.999999747378752E-6 .global lbl_805AA338 lbl_805AA338: # ROM: 0x3F6BD8 .4byte 0x44610000 .global lbl_805AA33C lbl_805AA33C: # ROM: 0x3F6BDC .float 5.0 .global lbl_805AA340 lbl_805AA340: # ROM: 0x3F6BE0 .4byte 0x4010C3BD .global lbl_805AA344 lbl_805AA344: # ROM: 0x3F6BE4 .4byte 0x3FD33333 .global lbl_805AA348 lbl_805AA348: # ROM: 0x3F6BE8 .4byte 0x43480000 .global lbl_805AA34C lbl_805AA34C: # ROM: 0x3F6BEC .4byte 0x3F7D70A4 .section .text, "ax" .global IntegrateVisorFog__13CStateManagerFf IntegrateVisorFog__13CStateManagerFf: /* 80043DE0 00040D40 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80043DE4 00040D44 7C 08 02 A6 */ mflr r0 /* 80043DE8 00040D48 90 01 00 24 */ stw r0, 0x24(r1) /* 80043DEC 00040D4C DB E1 00 10 */ stfd f31, 0x10(r1) /* 80043DF0 00040D50 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 80043DF4 00040D54 93 E1 00 0C */ stw r31, 0xc(r1) /* 80043DF8 00040D58 7C 7F 1B 78 */ mr r31, r3 /* 80043DFC 00040D5C FF E0 08 90 */ fmr f31, f1 /* 80043E00 00040D60 80 63 08 B8 */ lwz r3, 0x8b8(r3) /* 80043E04 00040D64 7F E4 FB 78 */ mr r4, r31 /* 80043E08 00040D68 80 63 00 00 */ lwz r3, 0(r3) /* 80043E0C 00040D6C 48 04 D7 4D */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80043E10 00040D70 2C 03 00 02 */ cmpwi r3, 2 /* 80043E14 00040D74 40 82 00 20 */ bne lbl_80043E34 /* 80043E18 00040D78 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80043E1C 00040D7C 80 63 00 00 */ lwz r3, 0(r3) /* 80043E20 00040D80 48 04 DA 45 */ bl GetVisorTransitionFactor__12CPlayerStateCFv /* 80043E24 00040D84 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 80043E28 00040D88 EC 00 08 28 */ fsubs f0, f0, f1 /* 80043E2C 00040D8C EC 3F 00 32 */ fmuls f1, f31, f0 /* 80043E30 00040D90 48 00 00 08 */ b lbl_80043E38 lbl_80043E34: /* 80043E34 00040D94 FC 20 F8 90 */ fmr f1, f31 lbl_80043E38: /* 80043E38 00040D98 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 80043E3C 00040D9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80043E40 00040DA0 CB E1 00 10 */ lfd f31, 0x10(r1) /* 80043E44 00040DA4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80043E48 00040DA8 7C 08 03 A6 */ mtlr r0 /* 80043E4C 00040DAC 38 21 00 20 */ addi r1, r1, 0x20 /* 80043E50 00040DB0 4E 80 00 20 */ blr .global SendScriptMsgAlways__13CStateManagerF9TUniqueId SendScriptMsgAlways__13CStateManagerF9TUniqueId: /* 80043E54 00040DB4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80043E58 00040DB8 7C 08 02 A6 */ mflr r0 /* 80043E5C 00040DBC 90 01 00 24 */ stw r0, 0x24(r1) /* 80043E60 00040DC0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80043E64 00040DC4 7C DF 33 78 */ mr r31, r6 /* 80043E68 00040DC8 93 C1 00 18 */ stw r30, 0x18(r1) /* 80043E6C 00040DCC 7C BE 2B 78 */ mr r30, r5 /* 80043E70 00040DD0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80043E74 00040DD4 7C 7D 1B 78 */ mr r29, r3 /* 80043E78 00040DD8 A0 04 00 00 */ lhz r0, 0(r4) /* 80043E7C 00040DDC 38 81 00 0C */ addi r4, r1, 0xc /* 80043E80 00040DE0 B0 01 00 0C */ sth r0, 0xc(r1) /* 80043E84 00040DE4 48 00 86 F1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80043E88 00040DE8 28 03 00 00 */ cmplwi r3, 0 /* 80043E8C 00040DEC 41 82 00 28 */ beq lbl_80043EB4 /* 80043E90 00040DF0 A0 1E 00 00 */ lhz r0, 0(r30) /* 80043E94 00040DF4 7F E4 FB 78 */ mr r4, r31 /* 80043E98 00040DF8 7F A6 EB 78 */ mr r6, r29 /* 80043E9C 00040DFC 38 A1 00 08 */ addi r5, r1, 8 /* 80043EA0 00040E00 B0 01 00 08 */ sth r0, 8(r1) /* 80043EA4 00040E04 81 83 00 00 */ lwz r12, 0(r3) /* 80043EA8 00040E08 81 8C 00 18 */ lwz r12, 0x18(r12) /* 80043EAC 00040E0C 7D 89 03 A6 */ mtctr r12 /* 80043EB0 00040E10 4E 80 04 21 */ bctrl lbl_80043EB4: /* 80043EB4 00040E14 80 01 00 24 */ lwz r0, 0x24(r1) /* 80043EB8 00040E18 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80043EBC 00040E1C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80043EC0 00040E20 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80043EC4 00040E24 7C 08 03 A6 */ mtlr r0 /* 80043EC8 00040E28 38 21 00 20 */ addi r1, r1, 0x20 /* 80043ECC 00040E2C 4E 80 00 20 */ blr .global SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage: /* 80043ED0 00040E30 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80043ED4 00040E34 7C 08 02 A6 */ mflr r0 /* 80043ED8 00040E38 28 04 00 00 */ cmplwi r4, 0 /* 80043EDC 00040E3C 7C 67 1B 78 */ mr r7, r3 /* 80043EE0 00040E40 90 01 00 14 */ stw r0, 0x14(r1) /* 80043EE4 00040E44 41 82 00 38 */ beq lbl_80043F1C /* 80043EE8 00040E48 88 04 00 30 */ lbz r0, 0x30(r4) /* 80043EEC 00040E4C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 80043EF0 00040E50 40 82 00 2C */ bne lbl_80043F1C /* 80043EF4 00040E54 A0 05 00 00 */ lhz r0, 0(r5) /* 80043EF8 00040E58 7C 83 23 78 */ mr r3, r4 /* 80043EFC 00040E5C 7C C4 33 78 */ mr r4, r6 /* 80043F00 00040E60 7C E6 3B 78 */ mr r6, r7 /* 80043F04 00040E64 B0 01 00 08 */ sth r0, 8(r1) /* 80043F08 00040E68 38 A1 00 08 */ addi r5, r1, 8 /* 80043F0C 00040E6C 81 83 00 00 */ lwz r12, 0(r3) /* 80043F10 00040E70 81 8C 00 18 */ lwz r12, 0x18(r12) /* 80043F14 00040E74 7D 89 03 A6 */ mtctr r12 /* 80043F18 00040E78 4E 80 04 21 */ bctrl lbl_80043F1C: /* 80043F1C 00040E7C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80043F20 00040E80 7C 08 03 A6 */ mtlr r0 /* 80043F24 00040E84 38 21 00 10 */ addi r1, r1, 0x10 /* 80043F28 00040E88 4E 80 00 20 */ blr .global sub_80043f2c sub_80043f2c: /* 80043F2C 00040E8C 90 83 0F 84 */ stw r4, 0xf84(r3) /* 80043F30 00040E90 90 A3 0F 88 */ stw r5, 0xf88(r3) /* 80043F34 00040E94 D0 23 0F 8C */ stfs f1, 0xf8c(r3) /* 80043F38 00040E98 4E 80 00 20 */ blr .global GetPlayer__13CStateManagerCFv GetPlayer__13CStateManagerCFv: /* 80043F3C 00040E9C 80 63 08 4C */ lwz r3, 0x84c(r3) /* 80043F40 00040EA0 4E 80 00 20 */ blr .global SetBossParams__13CStateManagerF9TUniqueIdfUi SetBossParams__13CStateManagerF9TUniqueIdfUi: /* 80043F44 00040EA4 A0 04 00 00 */ lhz r0, 0(r4) /* 80043F48 00040EA8 B0 03 0F 18 */ sth r0, 0xf18(r3) /* 80043F4C 00040EAC D0 23 0F 1C */ stfs f1, 0xf1c(r3) /* 80043F50 00040EB0 90 A3 0F 20 */ stw r5, 0xf20(r3) /* 80043F54 00040EB4 4E 80 00 20 */ blr .global SetGameState__13CStateManagerFQ213CStateManager10EGameState SetGameState__13CStateManagerFQ213CStateManager10EGameState: /* 80043F58 00040EB8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80043F5C 00040EBC 7C 08 02 A6 */ mflr r0 /* 80043F60 00040EC0 90 01 00 14 */ stw r0, 0x14(r1) /* 80043F64 00040EC4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80043F68 00040EC8 7C 9F 23 78 */ mr r31, r4 /* 80043F6C 00040ECC 93 C1 00 08 */ stw r30, 8(r1) /* 80043F70 00040ED0 7C 7E 1B 78 */ mr r30, r3 /* 80043F74 00040ED4 80 03 09 04 */ lwz r0, 0x904(r3) /* 80043F78 00040ED8 7C 00 F8 00 */ cmpw r0, r31 /* 80043F7C 00040EDC 41 82 00 74 */ beq lbl_80043FF0 /* 80043F80 00040EE0 2C 00 00 01 */ cmpwi r0, 1 /* 80043F84 00040EE4 40 82 00 10 */ bne lbl_80043F94 /* 80043F88 00040EE8 80 7E 08 50 */ lwz r3, 0x850(r30) /* 80043F8C 00040EEC 38 80 00 00 */ li r4, 0 /* 80043F90 00040EF0 48 01 20 65 */ bl SetLoadPauseState__6CWorldFb lbl_80043F94: /* 80043F94 00040EF4 2C 1F 00 01 */ cmpwi r31, 1 /* 80043F98 00040EF8 41 82 00 30 */ beq lbl_80043FC8 /* 80043F9C 00040EFC 40 80 00 50 */ bge lbl_80043FEC /* 80043FA0 00040F00 2C 1F 00 00 */ cmpwi r31, 0 /* 80043FA4 00040F04 40 80 00 08 */ bge lbl_80043FAC /* 80043FA8 00040F08 48 00 00 44 */ b lbl_80043FEC lbl_80043FAC: /* 80043FAC 00040F0C 80 7E 08 8C */ lwz r3, 0x88c(r30) /* 80043FB0 00040F10 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 80043FB4 00040F14 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80043FB8 00040F18 41 82 00 34 */ beq lbl_80043FEC /* 80043FBC 00040F1C 38 80 00 00 */ li r4, 0 /* 80043FC0 00040F20 48 32 5D 41 */ bl SetDisabled__14CRumbleManagerFb /* 80043FC4 00040F24 48 00 00 28 */ b lbl_80043FEC lbl_80043FC8: /* 80043FC8 00040F28 80 7E 08 8C */ lwz r3, 0x88c(r30) /* 80043FCC 00040F2C 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 80043FD0 00040F30 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80043FD4 00040F34 40 82 00 0C */ bne lbl_80043FE0 /* 80043FD8 00040F38 38 80 00 01 */ li r4, 1 /* 80043FDC 00040F3C 48 32 5D 25 */ bl SetDisabled__14CRumbleManagerFb lbl_80043FE0: /* 80043FE0 00040F40 80 7E 08 50 */ lwz r3, 0x850(r30) /* 80043FE4 00040F44 38 80 00 01 */ li r4, 1 /* 80043FE8 00040F48 48 01 20 0D */ bl SetLoadPauseState__6CWorldFb lbl_80043FEC: /* 80043FEC 00040F4C 93 FE 09 04 */ stw r31, 0x904(r30) lbl_80043FF0: /* 80043FF0 00040F50 80 01 00 14 */ lwz r0, 0x14(r1) /* 80043FF4 00040F54 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80043FF8 00040F58 83 C1 00 08 */ lwz r30, 8(r1) /* 80043FFC 00040F5C 7C 08 03 A6 */ mtlr r0 /* 80044000 00040F60 38 21 00 10 */ addi r1, r1, 0x10 /* 80044004 00040F64 4E 80 00 20 */ blr .global sub_80044008 sub_80044008: /* 80044008 00040F68 90 83 0E F4 */ stw r4, 0xef4(r3) /* 8004400C 00040F6C 80 05 00 00 */ lwz r0, 0(r5) /* 80044010 00040F70 90 03 0E F8 */ stw r0, 0xef8(r3) /* 80044014 00040F74 80 05 00 04 */ lwz r0, 4(r5) /* 80044018 00040F78 90 03 0E FC */ stw r0, 0xefc(r3) /* 8004401C 00040F7C 80 06 00 00 */ lwz r0, 0(r6) /* 80044020 00040F80 90 03 0F 00 */ stw r0, 0xf00(r3) /* 80044024 00040F84 80 06 00 04 */ lwz r0, 4(r6) /* 80044028 00040F88 90 03 0F 04 */ stw r0, 0xf04(r3) /* 8004402C 00040F8C 4E 80 00 20 */ blr .global sub_80044030 sub_80044030: /* 80044030 00040F90 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044034 00040F94 7C 08 02 A6 */ mflr r0 /* 80044038 00040F98 90 01 00 14 */ stw r0, 0x14(r1) /* 8004403C 00040F9C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80044040 00040FA0 7C 9F 23 78 */ mr r31, r4 /* 80044044 00040FA4 93 C1 00 08 */ stw r30, 8(r1) /* 80044048 00040FA8 7C 7E 1B 78 */ mr r30, r3 /* 8004404C 00040FAC 38 1E 0F 70 */ addi r0, r30, 0xf70 /* 80044050 00040FB0 7C 1F 00 40 */ cmplw r31, r0 /* 80044054 00040FB4 41 82 00 1C */ beq lbl_80044070 /* 80044058 00040FB8 80 7E 0F 70 */ lwz r3, 0xf70(r30) /* 8004405C 00040FBC 48 2D 18 D5 */ bl Free__7CMemoryFPCv /* 80044060 00040FC0 80 7F 00 00 */ lwz r3, 0(r31) /* 80044064 00040FC4 38 00 00 00 */ li r0, 0 /* 80044068 00040FC8 90 7E 0F 70 */ stw r3, 0xf70(r30) /* 8004406C 00040FCC 90 1F 00 00 */ stw r0, 0(r31) lbl_80044070: /* 80044070 00040FD0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044074 00040FD4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80044078 00040FD8 83 C1 00 08 */ lwz r30, 8(r1) /* 8004407C 00040FDC 7C 08 03 A6 */ mtlr r0 /* 80044080 00040FE0 38 21 00 10 */ addi r1, r1, 0x10 /* 80044084 00040FE4 4E 80 00 20 */ blr .global sub_80044088 sub_80044088: /* 80044088 00040FE8 80 63 0F 70 */ lwz r3, 0xf70(r3) /* 8004408C 00040FEC 4E 80 00 20 */ blr .global sub_80044090 sub_80044090: /* 80044090 00040FF0 80 63 0F 70 */ lwz r3, 0xf70(r3) /* 80044094 00040FF4 4E 80 00 20 */ blr .global sub_80044098 sub_80044098: /* 80044098 00040FF8 94 21 FE A0 */ stwu r1, -0x160(r1) /* 8004409C 00040FFC 7C 08 02 A6 */ mflr r0 /* 800440A0 00041000 90 01 01 64 */ stw r0, 0x164(r1) /* 800440A4 00041004 DB E1 01 50 */ stfd f31, 0x150(r1) /* 800440A8 00041008 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 /* 800440AC 0004100C BE C1 01 28 */ stmw r22, 0x128(r1) /* 800440B0 00041010 7C BF 2B 78 */ mr r31, r5 /* 800440B4 00041014 7C 7D 1B 78 */ mr r29, r3 /* 800440B8 00041018 88 05 00 20 */ lbz r0, 0x20(r5) /* 800440BC 0004101C 7C 9E 23 78 */ mr r30, r4 /* 800440C0 00041020 7C D8 33 78 */ mr r24, r6 /* 800440C4 00041024 7C F7 3B 78 */ mr r23, r7 /* 800440C8 00041028 28 00 00 00 */ cmplwi r0, 0 /* 800440CC 0004102C 7D 1B 43 78 */ mr r27, r8 /* 800440D0 00041030 7D 3C 4B 78 */ mr r28, r9 /* 800440D4 00041034 41 82 03 80 */ beq lbl_80044454 /* 800440D8 00041038 3C 60 80 5A */ lis r3, skZero3f@ha /* 800440DC 0004103C 3C A0 80 5A */ lis r5, lbl_805A66F4@ha /* 800440E0 00041040 38 83 66 A0 */ addi r4, r3, skZero3f@l /* 800440E4 00041044 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l /* 800440E8 00041048 38 61 00 94 */ addi r3, r1, 0x94 /* 800440EC 0004104C 38 BF 00 10 */ addi r5, r31, 0x10 /* 800440F0 00041050 48 2C FA 21 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 800440F4 00041054 38 61 00 F0 */ addi r3, r1, 0xf0 /* 800440F8 00041058 38 81 00 94 */ addi r4, r1, 0x94 /* 800440FC 0004105C 48 2C EA 79 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80044100 00041060 A0 78 00 00 */ lhz r3, 0(r24) /* 80044104 00041064 3B 20 00 01 */ li r25, 1 /* 80044108 00041068 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004410C 0004106C C0 5F 00 04 */ lfs f2, 4(r31) /* 80044110 00041070 C0 3F 00 08 */ lfs f1, 8(r31) /* 80044114 00041074 7C 03 00 40 */ cmplw r3, r0 /* 80044118 00041078 C0 1F 00 0C */ lfs f0, 0xc(r31) /* 8004411C 0004107C D0 41 00 FC */ stfs f2, 0xfc(r1) /* 80044120 00041080 D0 21 01 0C */ stfs f1, 0x10c(r1) /* 80044124 00041084 D0 01 01 1C */ stfs f0, 0x11c(r1) /* 80044128 00041088 40 82 00 30 */ bne lbl_80044158 /* 8004412C 0004108C 3C 60 00 E4 */ lis r3, 0x00E3FFFE@ha /* 80044130 00041090 80 BF 00 28 */ lwz r5, 0x28(r31) /* 80044134 00041094 38 00 00 00 */ li r0, 0 /* 80044138 00041098 80 9F 00 2C */ lwz r4, 0x2c(r31) /* 8004413C 0004109C 38 63 FF FE */ addi r3, r3, 0x00E3FFFE@l /* 80044140 000410A0 7C 84 18 38 */ and r4, r4, r3 /* 80044144 000410A4 7C A3 00 38 */ and r3, r5, r0 /* 80044148 000410A8 48 28 BA C1 */ bl BitPosition__13CMaterialListFUx /* 8004414C 000410AC 48 26 E2 79 */ bl GetWorldCollisionResponseType__22CCollisionResponseDataFi /* 80044150 000410B0 7C 79 1B 78 */ mr r25, r3 /* 80044154 000410B4 48 00 00 50 */ b lbl_800441A4 lbl_80044158: /* 80044158 000410B8 B0 61 00 18 */ sth r3, 0x18(r1) /* 8004415C 000410BC 7F A3 EB 78 */ mr r3, r29 /* 80044160 000410C0 38 81 00 18 */ addi r4, r1, 0x18 /* 80044164 000410C4 48 00 84 41 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80044168 000410C8 7C 64 1B 78 */ mr r4, r3 /* 8004416C 000410CC 38 61 00 38 */ addi r3, r1, 0x38 /* 80044170 000410D0 48 06 BB 21 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 80044174 000410D4 80 63 00 04 */ lwz r3, 4(r3) /* 80044178 000410D8 28 03 00 00 */ cmplwi r3, 0 /* 8004417C 000410DC 41 82 00 28 */ beq lbl_800441A4 /* 80044180 000410E0 81 83 00 00 */ lwz r12, 0(r3) /* 80044184 000410E4 7E E6 BB 78 */ mr r6, r23 /* 80044188 000410E8 38 9F 00 04 */ addi r4, r31, 4 /* 8004418C 000410EC 38 BF 00 10 */ addi r5, r31, 0x10 /* 80044190 000410F0 81 8C 00 58 */ lwz r12, 0x58(r12) /* 80044194 000410F4 38 E0 00 00 */ li r7, 0 /* 80044198 000410F8 7D 89 03 A6 */ mtctr r12 /* 8004419C 000410FC 4E 80 04 21 */ bctrl /* 800441A0 00041100 7C 79 1B 78 */ mr r25, r3 lbl_800441A4: /* 800441A4 00041104 7F C4 F3 78 */ mr r4, r30 /* 800441A8 00041108 7F 25 CB 78 */ mr r5, r25 /* 800441AC 0004110C 38 61 00 5C */ addi r3, r1, 0x5c /* 800441B0 00041110 48 26 E4 11 */ bl GetParticleDescription__22CCollisionResponseDataCF29EWeaponCollisionResponseTypes /* 800441B4 00041114 88 01 00 68 */ lbz r0, 0x68(r1) /* 800441B8 00041118 28 00 00 00 */ cmplwi r0, 0 /* 800441BC 0004111C 98 01 00 78 */ stb r0, 0x78(r1) /* 800441C0 00041120 41 82 00 28 */ beq lbl_800441E8 /* 800441C4 00041124 37 01 00 6C */ addic. r24, r1, 0x6c /* 800441C8 00041128 38 81 00 5C */ addi r4, r1, 0x5c /* 800441CC 0004112C 41 82 00 1C */ beq lbl_800441E8 /* 800441D0 00041130 7F 03 C3 78 */ mr r3, r24 /* 800441D4 00041134 48 2F CC D5 */ bl __ct__6CTokenFRC6CToken /* 800441D8 00041138 80 01 00 64 */ lwz r0, 0x64(r1) /* 800441DC 0004113C 7F 03 C3 78 */ mr r3, r24 /* 800441E0 00041140 90 18 00 08 */ stw r0, 8(r24) /* 800441E4 00041144 48 2F CB A1 */ bl Lock__6CTokenFv lbl_800441E8: /* 800441E8 00041148 88 01 00 68 */ lbz r0, 0x68(r1) /* 800441EC 0004114C 28 00 00 00 */ cmplwi r0, 0 /* 800441F0 00041150 41 82 00 1C */ beq lbl_8004420C /* 800441F4 00041154 34 61 00 5C */ addic. r3, r1, 0x5c /* 800441F8 00041158 41 82 00 14 */ beq lbl_8004420C /* 800441FC 0004115C 28 03 00 00 */ cmplwi r3, 0 /* 80044200 00041160 41 82 00 0C */ beq lbl_8004420C /* 80044204 00041164 38 80 00 00 */ li r4, 0 /* 80044208 00041168 48 2F CC 39 */ bl __dt__6CTokenFv lbl_8004420C: /* 8004420C 0004116C 88 01 00 78 */ lbz r0, 0x78(r1) /* 80044210 00041170 38 60 00 00 */ li r3, 0 /* 80044214 00041174 98 61 00 68 */ stb r3, 0x68(r1) /* 80044218 00041178 28 00 00 00 */ cmplwi r0, 0 /* 8004421C 0004117C 41 82 01 54 */ beq lbl_80044370 /* 80044220 00041180 3C 60 80 3D */ lis r3, lbl_803CCEE0@ha /* 80044224 00041184 3B 00 00 00 */ li r24, 0 /* 80044228 00041188 38 83 CE E0 */ addi r4, r3, lbl_803CCEE0@l /* 8004422C 0004118C 3A C0 00 00 */ li r22, 0 /* 80044230 00041190 38 60 01 00 */ li r3, 0x100 /* 80044234 00041194 38 A0 00 00 */ li r5, 0 /* 80044238 00041198 48 2D 16 35 */ bl __nw__FUlPCcPCc /* 8004423C 0004119C 7C 7A 1B 79 */ or. r26, r3, r3 /* 80044240 000411A0 41 82 00 C8 */ beq lbl_80044308 /* 80044244 000411A4 57 64 06 3E */ clrlwi r4, r27, 0x18 /* 80044248 000411A8 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 8004424C 000411AC 7C 64 00 D0 */ neg r3, r4 /* 80044250 000411B0 57 80 06 3E */ clrlwi r0, r28, 0x18 /* 80044254 000411B4 7C 65 23 78 */ or r5, r3, r4 /* 80044258 000411B8 3C 60 80 3D */ lis r3, lbl_803CCEE0@ha /* 8004425C 000411BC 7C 00 00 34 */ cntlzw r0, r0 /* 80044260 000411C0 D0 01 00 50 */ stfs f0, 0x50(r1) /* 80044264 000411C4 38 83 CE E0 */ addi r4, r3, lbl_803CCEE0@l /* 80044268 000411C8 7C A5 FE 70 */ srawi r5, r5, 0x1f /* 8004426C 000411CC 38 60 00 02 */ li r3, 2 /* 80044270 000411D0 D0 01 00 54 */ stfs f0, 0x54(r1) /* 80044274 000411D4 3B 61 00 50 */ addi r27, r1, 0x50 /* 80044278 000411D8 54 17 D9 7E */ srwi r23, r0, 5 /* 8004427C 000411DC D0 01 00 58 */ stfs f0, 0x58(r1) /* 80044280 000411E0 7C 7C 28 38 */ and r28, r3, r5 /* 80044284 000411E4 38 61 00 40 */ addi r3, r1, 0x40 /* 80044288 000411E8 38 84 00 07 */ addi r4, r4, 7 /* 8004428C 000411EC 4B FC 0A 2D */ bl string_l__4rstlFPCc /* 80044290 000411F0 80 8D A3 88 */ lwz r4, kInvalidEditorId@sda21(r13) /* 80044294 000411F4 3C 60 80 57 */ lis r3, NullConnectionList__7CEntity@ha /* 80044298 000411F8 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8004429C 000411FC 38 A3 D4 10 */ addi r5, r3, NullConnectionList__7CEntity@l /* 800442A0 00041200 90 81 00 34 */ stw r4, 0x34(r1) /* 800442A4 00041204 38 61 00 7C */ addi r3, r1, 0x7c /* 800442A8 00041208 38 81 00 30 */ addi r4, r1, 0x30 /* 800442AC 0004120C 38 C1 00 34 */ addi r6, r1, 0x34 /* 800442B0 00041210 90 01 00 30 */ stw r0, 0x30(r1) /* 800442B4 00041214 3B 00 00 01 */ li r24, 1 /* 800442B8 00041218 48 00 D1 CD */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" /* 800442BC 0004121C 7F A4 EB 78 */ mr r4, r29 /* 800442C0 00041220 38 61 00 10 */ addi r3, r1, 0x10 /* 800442C4 00041224 3A C0 00 01 */ li r22, 1 /* 800442C8 00041228 48 00 8E 15 */ bl AllocateUniqueId__13CStateManagerFv /* 800442CC 0004122C A0 01 00 10 */ lhz r0, 0x10(r1) /* 800442D0 00041230 B0 01 00 14 */ sth r0, 0x14(r1) /* 800442D4 00041234 48 30 5C D9 */ bl White__6CColorFv /* 800442D8 00041238 93 61 00 08 */ stw r27, 8(r1) /* 800442DC 0004123C 38 81 00 6C */ addi r4, r1, 0x6c /* 800442E0 00041240 38 A1 00 14 */ addi r5, r1, 0x14 /* 800442E4 00041244 38 E1 00 7C */ addi r7, r1, 0x7c /* 800442E8 00041248 90 61 00 0C */ stw r3, 0xc(r1) /* 800442EC 0004124C 7F 43 D3 78 */ mr r3, r26 /* 800442F0 00041250 39 01 00 40 */ addi r8, r1, 0x40 /* 800442F4 00041254 39 21 00 F0 */ addi r9, r1, 0xf0 /* 800442F8 00041258 7E EA E3 78 */ or r10, r23, r28 /* 800442FC 0004125C 38 C0 00 01 */ li r6, 1 /* 80044300 00041260 48 01 67 F9 */ bl "__ct__10CExplosionFRC31TLockedToken<15CGenDescription>9TUniqueIdbRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" /* 80044304 00041264 7C 7A 1B 78 */ mr r26, r3 lbl_80044308: /* 80044308 00041268 7E C0 07 75 */ extsb. r0, r22 /* 8004430C 0004126C 7F 57 D3 78 */ mr r23, r26 /* 80044310 00041270 41 82 00 44 */ beq lbl_80044354 /* 80044314 00041274 80 01 00 84 */ lwz r0, 0x84(r1) /* 80044318 00041278 80 61 00 8C */ lwz r3, 0x8c(r1) /* 8004431C 0004127C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80044320 00041280 90 61 00 20 */ stw r3, 0x20(r1) /* 80044324 00041284 7C 64 1B 78 */ mr r4, r3 /* 80044328 00041288 7C 03 02 14 */ add r0, r3, r0 /* 8004432C 0004128C 90 61 00 1C */ stw r3, 0x1c(r1) /* 80044330 00041290 90 01 00 28 */ stw r0, 0x28(r1) /* 80044334 00041294 90 01 00 24 */ stw r0, 0x24(r1) /* 80044338 00041298 48 00 00 08 */ b lbl_80044340 lbl_8004433C: /* 8004433C 0004129C 38 84 00 0C */ addi r4, r4, 0xc lbl_80044340: /* 80044340 000412A0 7C 04 00 40 */ cmplw r4, r0 /* 80044344 000412A4 40 82 FF F8 */ bne lbl_8004433C /* 80044348 000412A8 28 03 00 00 */ cmplwi r3, 0 /* 8004434C 000412AC 41 82 00 08 */ beq lbl_80044354 /* 80044350 000412B0 48 2D 15 E1 */ bl Free__7CMemoryFPCv lbl_80044354: /* 80044354 000412B4 7F 00 07 75 */ extsb. r0, r24 /* 80044358 000412B8 41 82 00 0C */ beq lbl_80044364 /* 8004435C 000412BC 38 61 00 40 */ addi r3, r1, 0x40 /* 80044360 000412C0 48 2F 97 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80044364: /* 80044364 000412C4 7F A3 EB 78 */ mr r3, r29 /* 80044368 000412C8 7E E4 BB 78 */ mr r4, r23 /* 8004436C 000412CC 48 00 89 89 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence lbl_80044370: /* 80044370 000412D0 7F C3 F3 78 */ mr r3, r30 /* 80044374 000412D4 7F 24 CB 78 */ mr r4, r25 /* 80044378 000412D8 48 26 E1 59 */ bl GetSoundEffectId__22CCollisionResponseDataCF29EWeaponCollisionResponseTypes /* 8004437C 000412DC 7C 78 1B 79 */ or. r24, r3, r3 /* 80044380 000412E0 41 80 00 A8 */ blt lbl_80044428 /* 80044384 000412E4 7F C3 F3 78 */ mr r3, r30 /* 80044388 000412E8 48 26 E0 71 */ bl GetAudibleRange__22CCollisionResponseDataCFv /* 8004438C 000412EC FF E0 08 90 */ fmr f31, f1 /* 80044390 000412F0 7F C3 F3 78 */ mr r3, r30 /* 80044394 000412F4 48 26 E0 5D */ bl GetAudibleFallOff__22CCollisionResponseDataCFv /* 80044398 000412F8 C0 82 85 68 */ lfs f4, lbl_805AA288@sda21(r2) /* 8004439C 000412FC 38 C0 00 00 */ li r6, 0 /* 800443A0 00041300 88 A2 CC 40 */ lbz r5, lbl_805AE960@sda21(r2) /* 800443A4 00041304 38 E0 00 01 */ li r7, 1 /* 800443A8 00041308 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) /* 800443AC 0004130C 38 80 00 14 */ li r4, 0x14 /* 800443B0 00041310 D0 81 00 C4 */ stfs f4, 0xc4(r1) /* 800443B4 00041314 57 03 04 3E */ clrlwi r3, r24, 0x10 /* 800443B8 00041318 C0 7F 00 04 */ lfs f3, 4(r31) /* 800443BC 0004131C D0 81 00 C8 */ stfs f4, 0xc8(r1) /* 800443C0 00041320 C0 5F 00 08 */ lfs f2, 8(r31) /* 800443C4 00041324 D0 81 00 CC */ stfs f4, 0xcc(r1) /* 800443C8 00041328 C0 1F 00 0C */ lfs f0, 0xc(r31) /* 800443CC 0004132C D0 81 00 D0 */ stfs f4, 0xd0(r1) /* 800443D0 00041330 D0 81 00 D4 */ stfs f4, 0xd4(r1) /* 800443D4 00041334 D0 81 00 D8 */ stfs f4, 0xd8(r1) /* 800443D8 00041338 D3 E1 00 DC */ stfs f31, 0xdc(r1) /* 800443DC 0004133C D0 21 00 E0 */ stfs f1, 0xe0(r1) /* 800443E0 00041340 90 E1 00 E4 */ stw r7, 0xe4(r1) /* 800443E4 00041344 B0 C1 00 E8 */ sth r6, 0xe8(r1) /* 800443E8 00041348 98 A1 00 EA */ stb r5, 0xea(r1) /* 800443EC 0004134C 98 81 00 EB */ stb r4, 0xeb(r1) /* 800443F0 00041350 98 C1 00 EC */ stb r6, 0xec(r1) /* 800443F4 00041354 98 01 00 ED */ stb r0, 0xed(r1) /* 800443F8 00041358 D0 61 00 C4 */ stfs f3, 0xc4(r1) /* 800443FC 0004135C D0 41 00 C8 */ stfs f2, 0xc8(r1) /* 80044400 00041360 D0 01 00 CC */ stfs f0, 0xcc(r1) /* 80044404 00041364 48 2A 45 AD */ bl TranslateSFXID__11CSfxManagerFUs /* 80044408 00041368 B0 61 00 E8 */ sth r3, 0xe8(r1) /* 8004440C 0004136C 38 61 00 2C */ addi r3, r1, 0x2c /* 80044410 00041370 A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) /* 80044414 00041374 38 81 00 C4 */ addi r4, r1, 0xc4 /* 80044418 00041378 81 02 C6 00 */ lwz r8, lbl_805AE320@sda21(r2) /* 8004441C 0004137C 38 A0 00 01 */ li r5, 1 /* 80044420 00041380 38 E0 00 00 */ li r7, 0 /* 80044424 00041384 48 2A 5B BD */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi lbl_80044428: /* 80044428 00041388 88 01 00 78 */ lbz r0, 0x78(r1) /* 8004442C 0004138C 28 00 00 00 */ cmplwi r0, 0 /* 80044430 00041390 41 82 00 1C */ beq lbl_8004444C /* 80044434 00041394 34 61 00 6C */ addic. r3, r1, 0x6c /* 80044438 00041398 41 82 00 14 */ beq lbl_8004444C /* 8004443C 0004139C 28 03 00 00 */ cmplwi r3, 0 /* 80044440 000413A0 41 82 00 0C */ beq lbl_8004444C /* 80044444 000413A4 38 80 00 00 */ li r4, 0 /* 80044448 000413A8 48 2F C9 F9 */ bl __dt__6CTokenFv lbl_8004444C: /* 8004444C 000413AC 38 00 00 00 */ li r0, 0 /* 80044450 000413B0 98 01 00 78 */ stb r0, 0x78(r1) lbl_80044454: /* 80044454 000413B4 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 /* 80044458 000413B8 CB E1 01 50 */ lfd f31, 0x150(r1) /* 8004445C 000413BC BA C1 01 28 */ lmw r22, 0x128(r1) /* 80044460 000413C0 80 01 01 64 */ lwz r0, 0x164(r1) /* 80044464 000413C4 7C 08 03 A6 */ mtlr r0 /* 80044468 000413C8 38 21 01 60 */ addi r1, r1, 0x160 /* 8004446C 000413CC 4E 80 00 20 */ blr .global GetCharacterRenderMaskAndTarget__13CStateManagerFbRiRi GetCharacterRenderMaskAndTarget__13CStateManagerFbRiRi: /* 80044470 000413D0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80044474 000413D4 7C 08 02 A6 */ mflr r0 /* 80044478 000413D8 90 01 00 24 */ stw r0, 0x24(r1) /* 8004447C 000413DC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80044480 000413E0 7C DF 33 78 */ mr r31, r6 /* 80044484 000413E4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80044488 000413E8 7C BE 2B 78 */ mr r30, r5 /* 8004448C 000413EC 93 A1 00 14 */ stw r29, 0x14(r1) /* 80044490 000413F0 7C 9D 23 78 */ mr r29, r4 /* 80044494 000413F4 93 81 00 10 */ stw r28, 0x10(r1) /* 80044498 000413F8 7C 7C 1B 78 */ mr r28, r3 /* 8004449C 000413FC 7F 84 E3 78 */ mr r4, r28 /* 800444A0 00041400 80 63 08 B8 */ lwz r3, 0x8b8(r3) /* 800444A4 00041404 80 63 00 00 */ lwz r3, 0(r3) /* 800444A8 00041408 48 04 D0 B1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 800444AC 0004140C 2C 03 00 02 */ cmpwi r3, 2 /* 800444B0 00041410 38 00 00 00 */ li r0, 0 /* 800444B4 00041414 38 80 00 00 */ li r4, 0 /* 800444B8 00041418 41 82 00 24 */ beq lbl_800444DC /* 800444BC 0004141C 40 80 00 14 */ bge lbl_800444D0 /* 800444C0 00041420 2C 03 00 00 */ cmpwi r3, 0 /* 800444C4 00041424 41 82 00 18 */ beq lbl_800444DC /* 800444C8 00041428 40 80 00 20 */ bge lbl_800444E8 /* 800444CC 0004142C 48 00 00 74 */ b lbl_80044540 lbl_800444D0: /* 800444D0 00041430 2C 03 00 04 */ cmpwi r3, 4 /* 800444D4 00041434 40 80 00 6C */ bge lbl_80044540 /* 800444D8 00041438 48 00 00 1C */ b lbl_800444F4 lbl_800444DC: /* 800444DC 0004143C 38 00 10 00 */ li r0, 0x1000 /* 800444E0 00041440 38 80 00 00 */ li r4, 0 /* 800444E4 00041444 48 00 00 5C */ b lbl_80044540 lbl_800444E8: /* 800444E8 00041448 38 00 08 00 */ li r0, 0x800 /* 800444EC 0004144C 38 80 00 00 */ li r4, 0 /* 800444F0 00041450 48 00 00 50 */ b lbl_80044540 lbl_800444F4: /* 800444F4 00041454 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 800444F8 00041458 41 82 00 28 */ beq lbl_80044520 /* 800444FC 0004145C 80 1C 0F 34 */ lwz r0, 0xf34(r28) /* 80044500 00041460 2C 00 00 00 */ cmpwi r0, 0 /* 80044504 00041464 40 82 00 10 */ bne lbl_80044514 /* 80044508 00041468 38 00 06 00 */ li r0, 0x600 /* 8004450C 0004146C 38 80 00 00 */ li r4, 0 /* 80044510 00041470 48 00 00 30 */ b lbl_80044540 lbl_80044514: /* 80044514 00041474 38 00 06 00 */ li r0, 0x600 /* 80044518 00041478 38 80 02 00 */ li r4, 0x200 /* 8004451C 0004147C 48 00 00 24 */ b lbl_80044540 lbl_80044520: /* 80044520 00041480 80 1C 0F 34 */ lwz r0, 0xf34(r28) /* 80044524 00041484 2C 00 00 01 */ cmpwi r0, 1 /* 80044528 00041488 40 82 00 10 */ bne lbl_80044538 /* 8004452C 0004148C 38 00 05 00 */ li r0, 0x500 /* 80044530 00041490 38 80 00 00 */ li r4, 0 /* 80044534 00041494 48 00 00 0C */ b lbl_80044540 lbl_80044538: /* 80044538 00041498 38 00 05 00 */ li r0, 0x500 /* 8004453C 0004149C 38 80 01 00 */ li r4, 0x100 lbl_80044540: /* 80044540 000414A0 90 1E 00 00 */ stw r0, 0(r30) /* 80044544 000414A4 90 9F 00 00 */ stw r4, 0(r31) /* 80044548 000414A8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004454C 000414AC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80044550 000414B0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80044554 000414B4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80044558 000414B8 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004455C 000414BC 7C 08 03 A6 */ mtlr r0 /* 80044560 000414C0 38 21 00 20 */ addi r1, r1, 0x20 /* 80044564 000414C4 4E 80 00 20 */ blr .global UpdateThermalVisor__13CStateManagerFv UpdateThermalVisor__13CStateManagerFv: /* 80044568 000414C8 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8004456C 000414CC 7C 08 02 A6 */ mflr r0 /* 80044570 000414D0 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80044574 000414D4 DB E1 00 90 */ stfd f31, 0x90(r1) /* 80044578 000414D8 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 8004457C 000414DC DB C1 00 80 */ stfd f30, 0x80(r1) /* 80044580 000414E0 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 80044584 000414E4 DB A1 00 70 */ stfd f29, 0x70(r1) /* 80044588 000414E8 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 8004458C 000414EC DB 81 00 60 */ stfd f28, 0x60(r1) /* 80044590 000414F0 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 /* 80044594 000414F4 DB 61 00 50 */ stfd f27, 0x50(r1) /* 80044598 000414F8 F3 61 00 58 */ psq_st f27, 88(r1), 0, qr0 /* 8004459C 000414FC DB 41 00 40 */ stfd f26, 0x40(r1) /* 800445A0 00041500 F3 41 00 48 */ psq_st f26, 72(r1), 0, qr0 /* 800445A4 00041504 BF 41 00 28 */ stmw r26, 0x28(r1) /* 800445A8 00041508 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 800445AC 0004150C 7C 7C 1B 78 */ mr r28, r3 /* 800445B0 00041510 7F 84 E3 78 */ mr r4, r28 /* 800445B4 00041514 D0 03 0F 28 */ stfs f0, 0xf28(r3) /* 800445B8 00041518 D0 03 0F 24 */ stfs f0, 0xf24(r3) /* 800445BC 0004151C 80 63 08 B8 */ lwz r3, 0x8b8(r3) /* 800445C0 00041520 80 63 00 00 */ lwz r3, 0(r3) /* 800445C4 00041524 48 04 CF 95 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 800445C8 00041528 2C 03 00 03 */ cmpwi r3, 3 /* 800445CC 0004152C 40 82 01 DC */ bne lbl_800447A8 /* 800445D0 00041530 80 BC 08 CC */ lwz r5, 0x8cc(r28) /* 800445D4 00041534 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 800445D8 00041538 90 A1 00 18 */ stw r5, 0x18(r1) /* 800445DC 0004153C 7C 05 00 00 */ cmpw r5, r0 /* 800445E0 00041540 41 82 01 C8 */ beq lbl_800447A8 /* 800445E4 00041544 80 9C 08 50 */ lwz r4, 0x850(r28) /* 800445E8 00041548 54 A3 18 38 */ slwi r3, r5, 3 /* 800445EC 0004154C C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 800445F0 00041550 38 03 00 04 */ addi r0, r3, 4 /* 800445F4 00041554 80 64 00 20 */ lwz r3, 0x20(r4) /* 800445F8 00041558 3B C0 00 00 */ li r30, 0 /* 800445FC 0004155C 80 9C 08 4C */ lwz r4, 0x84c(r28) /* 80044600 00041560 EF 60 00 32 */ fmuls f27, f0, f0 /* 80044604 00041564 7F 63 00 2E */ lwzx r27, r3, r0 /* 80044608 00041568 3B A0 00 00 */ li r29, 0 /* 8004460C 0004156C 90 A1 00 10 */ stw r5, 0x10(r1) /* 80044610 00041570 3B E0 00 00 */ li r31, 0 /* 80044614 00041574 C3 C4 00 40 */ lfs f30, 0x40(r4) /* 80044618 00041578 D0 01 00 24 */ stfs f0, 0x24(r1) /* 8004461C 0004157C C3 A4 00 50 */ lfs f29, 0x50(r4) /* 80044620 00041580 C3 82 85 6C */ lfs f28, lbl_805AA28C@sda21(r2) /* 80044624 00041584 83 5B 00 D0 */ lwz r26, 0xd0(r27) /* 80044628 00041588 C3 E2 85 70 */ lfs f31, lbl_805AA290@sda21(r2) /* 8004462C 0004158C 48 00 00 E4 */ b lbl_80044710 lbl_80044630: /* 80044630 00041590 80 1B 00 D8 */ lwz r0, 0xd8(r27) /* 80044634 00041594 7C 80 FA 14 */ add r4, r0, r31 /* 80044638 00041598 C0 64 00 1C */ lfs f3, 0x1c(r4) /* 8004463C 0004159C C0 44 00 28 */ lfs f2, 0x28(r4) /* 80044640 000415A0 C0 24 00 18 */ lfs f1, 0x18(r4) /* 80044644 000415A4 C0 04 00 24 */ lfs f0, 0x24(r4) /* 80044648 000415A8 EC 83 10 2A */ fadds f4, f3, f2 /* 8004464C 000415AC C0 64 00 34 */ lfs f3, 0x34(r4) /* 80044650 000415B0 EC 41 00 2A */ fadds f2, f1, f0 /* 80044654 000415B4 C0 24 00 30 */ lfs f1, 0x30(r4) /* 80044658 000415B8 EC 84 18 2A */ fadds f4, f4, f3 /* 8004465C 000415BC C0 64 00 40 */ lfs f3, 0x40(r4) /* 80044660 000415C0 C0 04 00 3C */ lfs f0, 0x3c(r4) /* 80044664 000415C4 EC 22 08 2A */ fadds f1, f2, f1 /* 80044668 000415C8 EC 44 18 2A */ fadds f2, f4, f3 /* 8004466C 000415CC EC 01 00 2A */ fadds f0, f1, f0 /* 80044670 000415D0 EC 3F 00 B2 */ fmuls f1, f31, f2 /* 80044674 000415D4 EC 1F 00 32 */ fmuls f0, f31, f0 /* 80044678 000415D8 EC 3D 08 28 */ fsubs f1, f29, f1 /* 8004467C 000415DC EC 5E 00 28 */ fsubs f2, f30, f0 /* 80044680 000415E0 EC 01 00 72 */ fmuls f0, f1, f1 /* 80044684 000415E4 D0 21 00 20 */ stfs f1, 0x20(r1) /* 80044688 000415E8 EC 22 00 B2 */ fmuls f1, f2, f2 /* 8004468C 000415EC D0 41 00 1C */ stfs f2, 0x1c(r1) /* 80044690 000415F0 EC 01 00 2A */ fadds f0, f1, f0 /* 80044694 000415F4 EF 5B 00 2A */ fadds f26, f27, f0 /* 80044698 000415F8 FC 1A E0 40 */ fcmpo cr0, f26, f28 /* 8004469C 000415FC 40 80 00 6C */ bge lbl_80044708 /* 800446A0 00041600 38 61 00 0C */ addi r3, r1, 0xc /* 800446A4 00041604 38 A0 00 00 */ li r5, 0 /* 800446A8 00041608 48 01 AC 7D */ bl GetConnectedAreaId__Q29IGameArea4DockCFi /* 800446AC 0004160C 80 A1 00 0C */ lwz r5, 0xc(r1) /* 800446B0 00041610 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 800446B4 00041614 90 A1 00 14 */ stw r5, 0x14(r1) /* 800446B8 00041618 7C 05 00 00 */ cmpw r5, r0 /* 800446BC 0004161C 41 82 00 4C */ beq lbl_80044708 /* 800446C0 00041620 80 9C 08 50 */ lwz r4, 0x850(r28) /* 800446C4 00041624 54 A3 18 38 */ slwi r3, r5, 3 /* 800446C8 00041628 38 03 00 04 */ addi r0, r3, 4 /* 800446CC 0004162C 90 A1 00 08 */ stw r5, 8(r1) /* 800446D0 00041630 80 64 00 20 */ lwz r3, 0x20(r4) /* 800446D4 00041634 7C 83 00 2E */ lwzx r4, r3, r0 /* 800446D8 00041638 88 04 00 F0 */ lbz r0, 0xf0(r4) /* 800446DC 0004163C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800446E0 00041640 41 82 00 28 */ beq lbl_80044708 /* 800446E4 00041644 41 82 00 10 */ beq lbl_800446F4 /* 800446E8 00041648 80 64 01 2C */ lwz r3, 0x12c(r4) /* 800446EC 0004164C 80 03 10 DC */ lwz r0, 0x10dc(r3) /* 800446F0 00041650 48 00 00 08 */ b lbl_800446F8 lbl_800446F4: /* 800446F4 00041654 38 00 00 00 */ li r0, 0 lbl_800446F8: /* 800446F8 00041658 2C 00 00 01 */ cmpwi r0, 1 /* 800446FC 0004165C 40 82 00 0C */ bne lbl_80044708 /* 80044700 00041660 FF 80 D0 90 */ fmr f28, f26 /* 80044704 00041664 7C 9E 23 78 */ mr r30, r4 lbl_80044708: /* 80044708 00041668 3B FF 00 4C */ addi r31, r31, 0x4c /* 8004470C 0004166C 3B BD 00 01 */ addi r29, r29, 1 lbl_80044710: /* 80044710 00041670 7C 1D D0 00 */ cmpw r29, r26 /* 80044714 00041674 41 80 FF 1C */ blt lbl_80044630 /* 80044718 00041678 80 7B 01 2C */ lwz r3, 0x12c(r27) /* 8004471C 0004167C 28 1E 00 00 */ cmplwi r30, 0 /* 80044720 00041680 C0 43 11 1C */ lfs f2, 0x111c(r3) /* 80044724 00041684 41 82 00 80 */ beq lbl_800447A4 /* 80044728 00041688 C0 62 85 68 */ lfs f3, lbl_805AA288@sda21(r2) /* 8004472C 0004168C FC 03 E0 00 */ fcmpu cr0, f3, f28 /* 80044730 00041690 40 82 00 08 */ bne lbl_80044738 /* 80044734 00041694 48 00 00 10 */ b lbl_80044744 lbl_80044738: /* 80044738 00041698 FC 00 E0 34 */ frsqrte f0, f28 /* 8004473C 0004169C FC 7C 00 32 */ fmul f3, f28, f0 /* 80044740 000416A0 FC 60 18 18 */ frsp f3, f3 lbl_80044744: /* 80044744 000416A4 C0 22 85 74 */ lfs f1, lbl_805AA294@sda21(r2) /* 80044748 000416A8 C0 02 85 78 */ lfs f0, lbl_805AA298@sda21(r2) /* 8004474C 000416AC EC 63 08 28 */ fsubs f3, f3, f1 /* 80044750 000416B0 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80044754 000416B4 40 80 00 48 */ bge lbl_8004479C /* 80044758 000416B8 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004475C 000416BC FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80044760 000416C0 40 81 00 18 */ ble lbl_80044778 /* 80044764 000416C4 C0 02 85 80 */ lfs f0, lbl_805AA2A0@sda21(r2) /* 80044768 000416C8 C0 22 85 7C */ lfs f1, lbl_805AA29C@sda21(r2) /* 8004476C 000416CC EC 00 00 F2 */ fmuls f0, f0, f3 /* 80044770 000416D0 EC 61 08 3A */ fmadds f3, f1, f0, f1 /* 80044774 000416D4 48 00 00 08 */ b lbl_8004477C lbl_80044778: /* 80044778 000416D8 C0 62 85 7C */ lfs f3, lbl_805AA29C@sda21(r2) lbl_8004477C: /* 8004477C 000416DC C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 80044780 000416E0 80 7E 01 2C */ lwz r3, 0x12c(r30) /* 80044784 000416E4 EC 20 18 28 */ fsubs f1, f0, f3 /* 80044788 000416E8 C0 03 11 1C */ lfs f0, 0x111c(r3) /* 8004478C 000416EC EC 01 00 32 */ fmuls f0, f1, f0 /* 80044790 000416F0 EC 03 00 BA */ fmadds f0, f3, f2, f0 /* 80044794 000416F4 D0 1C 0F 24 */ stfs f0, 0xf24(r28) /* 80044798 000416F8 48 00 00 10 */ b lbl_800447A8 lbl_8004479C: /* 8004479C 000416FC D0 5C 0F 24 */ stfs f2, 0xf24(r28) /* 800447A0 00041700 48 00 00 08 */ b lbl_800447A8 lbl_800447A4: /* 800447A4 00041704 D0 5C 0F 24 */ stfs f2, 0xf24(r28) lbl_800447A8: /* 800447A8 00041708 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 800447AC 0004170C CB E1 00 90 */ lfd f31, 0x90(r1) /* 800447B0 00041710 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 800447B4 00041714 CB C1 00 80 */ lfd f30, 0x80(r1) /* 800447B8 00041718 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 800447BC 0004171C CB A1 00 70 */ lfd f29, 0x70(r1) /* 800447C0 00041720 E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 /* 800447C4 00041724 CB 81 00 60 */ lfd f28, 0x60(r1) /* 800447C8 00041728 E3 61 00 58 */ psq_l f27, 88(r1), 0, qr0 /* 800447CC 0004172C CB 61 00 50 */ lfd f27, 0x50(r1) /* 800447D0 00041730 E3 41 00 48 */ psq_l f26, 72(r1), 0, qr0 /* 800447D4 00041734 CB 41 00 40 */ lfd f26, 0x40(r1) /* 800447D8 00041738 BB 41 00 28 */ lmw r26, 0x28(r1) /* 800447DC 0004173C 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 800447E0 00041740 7C 08 03 A6 */ mtlr r0 /* 800447E4 00041744 38 21 00 A0 */ addi r1, r1, 0xa0 /* 800447E8 00041748 4E 80 00 20 */ blr .global CanShowMapScreen__13CStateManagerFv CanShowMapScreen__13CStateManagerFv: /* 800447EC 0004174C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800447F0 00041750 7C 08 02 A6 */ mflr r0 /* 800447F4 00041754 90 01 00 14 */ stw r0, 0x14(r1) /* 800447F8 00041758 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 800447FC 0004175C 38 63 01 F8 */ addi r3, r3, 0x1f8 /* 80044800 00041760 48 22 2F 1D */ bl GetCurrentDisplayedHint__12CHintOptionsCFv /* 80044804 00041764 28 03 00 00 */ cmplwi r3, 0 /* 80044808 00041768 41 82 00 18 */ beq lbl_80044820 /* 8004480C 0004176C 48 22 36 41 */ bl CanContinue__Q212CHintOptions10SHintStateFv /* 80044810 00041770 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80044814 00041774 40 82 00 0C */ bne lbl_80044820 /* 80044818 00041778 38 60 00 00 */ li r3, 0 /* 8004481C 0004177C 48 00 00 08 */ b lbl_80044824 lbl_80044820: /* 80044820 00041780 38 60 00 01 */ li r3, 1 lbl_80044824: /* 80044824 00041784 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044828 00041788 7C 08 03 A6 */ mtlr r0 /* 8004482C 0004178C 38 21 00 10 */ addi r1, r1, 0x10 /* 80044830 00041790 4E 80 00 20 */ blr .global ShowPausedHUDMemo__13CStateManagerFUif ShowPausedHUDMemo__13CStateManagerFUif: /* 80044834 00041794 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044838 00041798 7C 08 02 A6 */ mflr r0 /* 8004483C 0004179C 90 01 00 14 */ stw r0, 0x14(r1) /* 80044840 000417A0 D0 23 0F 78 */ stfs f1, 0xf78(r3) /* 80044844 000417A4 90 83 0F 08 */ stw r4, 0xf08(r3) /* 80044848 000417A8 38 80 00 05 */ li r4, 5 /* 8004484C 000417AC 48 00 00 15 */ bl DeferStateTransition__13CStateManagerF23EStateManagerTransition /* 80044850 000417B0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044854 000417B4 7C 08 03 A6 */ mtlr r0 /* 80044858 000417B8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004485C 000417BC 4E 80 00 20 */ blr .global DeferStateTransition__13CStateManagerF23EStateManagerTransition DeferStateTransition__13CStateManagerF23EStateManagerTransition: /* 80044860 000417C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044864 000417C4 7C 08 02 A6 */ mflr r0 /* 80044868 000417C8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004486C 000417CC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80044870 000417D0 7C 9F 23 79 */ or. r31, r4, r4 /* 80044874 000417D4 93 C1 00 08 */ stw r30, 8(r1) /* 80044878 000417D8 7C 7E 1B 78 */ mr r30, r3 /* 8004487C 000417DC 40 82 00 28 */ bne lbl_800448A4 /* 80044880 000417E0 80 1E 0F 90 */ lwz r0, 0xf90(r30) /* 80044884 000417E4 2C 00 00 00 */ cmpwi r0, 0 /* 80044888 000417E8 41 82 00 38 */ beq lbl_800448C0 /* 8004488C 000417EC 80 7E 08 50 */ lwz r3, 0x850(r30) /* 80044890 000417F0 38 80 00 00 */ li r4, 0 /* 80044894 000417F4 48 01 17 61 */ bl SetLoadPauseState__6CWorldFb /* 80044898 000417F8 38 00 00 00 */ li r0, 0 /* 8004489C 000417FC 90 1E 0F 90 */ stw r0, 0xf90(r30) /* 800448A0 00041800 48 00 00 20 */ b lbl_800448C0 lbl_800448A4: /* 800448A4 00041804 80 1E 0F 90 */ lwz r0, 0xf90(r30) /* 800448A8 00041808 2C 00 00 00 */ cmpwi r0, 0 /* 800448AC 0004180C 40 82 00 14 */ bne lbl_800448C0 /* 800448B0 00041810 80 7E 08 50 */ lwz r3, 0x850(r30) /* 800448B4 00041814 38 80 00 01 */ li r4, 1 /* 800448B8 00041818 48 01 17 3D */ bl SetLoadPauseState__6CWorldFb /* 800448BC 0004181C 93 FE 0F 90 */ stw r31, 0xf90(r30) lbl_800448C0: /* 800448C0 00041820 80 01 00 14 */ lwz r0, 0x14(r1) /* 800448C4 00041824 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800448C8 00041828 83 C1 00 08 */ lwz r30, 8(r1) /* 800448CC 0004182C 7C 08 03 A6 */ mtlr r0 /* 800448D0 00041830 38 21 00 10 */ addi r1, r1, 0x10 /* 800448D4 00041834 4E 80 00 20 */ blr .global RenderLast__13CStateManagerFRC9TUniqueId RenderLast__13CStateManagerFRC9TUniqueId: /* 800448D8 00041838 80 A3 08 6C */ lwz r5, 0x86c(r3) /* 800448DC 0004183C 3C 65 00 01 */ addis r3, r5, 1 /* 800448E0 00041840 80 03 F3 9C */ lwz r0, -0xc64(r3) /* 800448E4 00041844 2C 00 00 14 */ cmpwi r0, 0x14 /* 800448E8 00041848 40 82 00 0C */ bne lbl_800448F4 /* 800448EC 0004184C 38 60 00 00 */ li r3, 0 /* 800448F0 00041850 4E 80 00 20 */ blr lbl_800448F4: /* 800448F4 00041854 54 00 08 3C */ slwi r0, r0, 1 /* 800448F8 00041858 7C 63 02 14 */ add r3, r3, r0 /* 800448FC 0004185C 34 63 F3 A0 */ addic. r3, r3, -3168 /* 80044900 00041860 41 82 00 0C */ beq lbl_8004490C /* 80044904 00041864 A0 04 00 00 */ lhz r0, 0(r4) /* 80044908 00041868 B0 03 00 00 */ sth r0, 0(r3) lbl_8004490C: /* 8004490C 0004186C 3C A5 00 01 */ addis r5, r5, 1 /* 80044910 00041870 38 60 00 01 */ li r3, 1 /* 80044914 00041874 80 85 F3 9C */ lwz r4, -0xc64(r5) /* 80044918 00041878 38 04 00 01 */ addi r0, r4, 1 /* 8004491C 0004187C 90 05 F3 9C */ stw r0, -0xc64(r5) /* 80044920 00041880 4E 80 00 20 */ blr .global AddDrawableActorPlane__13CStateManagerCFRC6CActorRC6CPlaneRC6CAABox AddDrawableActorPlane__13CStateManagerCFRC6CActorRC6CPlaneRC6CAABox: /* 80044924 00041884 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044928 00041888 7C 08 02 A6 */ mflr r0 /* 8004492C 0004188C 7C C8 33 78 */ mr r8, r6 /* 80044930 00041890 7C A6 2B 78 */ mr r6, r5 /* 80044934 00041894 90 01 00 14 */ stw r0, 0x14(r1) /* 80044938 00041898 7D 05 43 78 */ mr r5, r8 /* 8004493C 0004189C 80 E3 08 DC */ lwz r7, 0x8dc(r3) /* 80044940 000418A0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80044944 000418A4 38 07 00 01 */ addi r0, r7, 1 /* 80044948 000418A8 38 E0 00 00 */ li r7, 0 /* 8004494C 000418AC 90 04 00 CC */ stw r0, 0xcc(r4) /* 80044950 000418B0 81 83 00 00 */ lwz r12, 0(r3) /* 80044954 000418B4 81 8C 00 3C */ lwz r12, 0x3c(r12) /* 80044958 000418B8 7D 89 03 A6 */ mtctr r12 /* 8004495C 000418BC 4E 80 04 21 */ bctrl /* 80044960 000418C0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044964 000418C4 7C 08 03 A6 */ mtlr r0 /* 80044968 000418C8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004496C 000418CC 4E 80 00 20 */ blr .global AddDrawableActor__13CStateManagerCFRC6CActorRC9CVector3fRC6CAABox AddDrawableActor__13CStateManagerCFRC6CActorRC9CVector3fRC6CAABox: /* 80044970 000418D0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044974 000418D4 7C 08 02 A6 */ mflr r0 /* 80044978 000418D8 38 E0 00 00 */ li r7, 0 /* 8004497C 000418DC 39 00 00 00 */ li r8, 0 /* 80044980 000418E0 90 01 00 14 */ stw r0, 0x14(r1) /* 80044984 000418E4 81 23 08 DC */ lwz r9, 0x8dc(r3) /* 80044988 000418E8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 8004498C 000418EC 38 09 00 01 */ addi r0, r9, 1 /* 80044990 000418F0 90 04 00 CC */ stw r0, 0xcc(r4) /* 80044994 000418F4 81 83 00 00 */ lwz r12, 0(r3) /* 80044998 000418F8 81 8C 00 40 */ lwz r12, 0x40(r12) /* 8004499C 000418FC 7D 89 03 A6 */ mtctr r12 /* 800449A0 00041900 4E 80 04 21 */ bctrl /* 800449A4 00041904 80 01 00 14 */ lwz r0, 0x14(r1) /* 800449A8 00041908 7C 08 03 A6 */ mtlr r0 /* 800449AC 0004190C 38 21 00 10 */ addi r1, r1, 0x10 /* 800449B0 00041910 4E 80 00 20 */ blr .global SpecialSkipCinematic__13CStateManagerFv SpecialSkipCinematic__13CStateManagerFv: /* 800449B4 00041914 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800449B8 00041918 7C 08 02 A6 */ mflr r0 /* 800449BC 0004191C 90 01 00 24 */ stw r0, 0x24(r1) /* 800449C0 00041920 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800449C4 00041924 93 C1 00 18 */ stw r30, 0x18(r1) /* 800449C8 00041928 93 A1 00 14 */ stw r29, 0x14(r1) /* 800449CC 0004192C 7C 7D 1B 78 */ mr r29, r3 /* 800449D0 00041930 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800449D4 00041934 A0 A3 0F 38 */ lhz r5, 0xf38(r3) /* 800449D8 00041938 7C 05 00 40 */ cmplw r5, r0 /* 800449DC 0004193C 40 82 00 0C */ bne lbl_800449E8 /* 800449E0 00041940 38 60 00 00 */ li r3, 0 /* 800449E4 00041944 48 00 00 80 */ b lbl_80044A64 lbl_800449E8: /* 800449E8 00041948 B0 A1 00 08 */ sth r5, 8(r1) /* 800449EC 0004194C 38 81 00 0C */ addi r4, r1, 0xc /* 800449F0 00041950 B0 A1 00 0C */ sth r5, 0xc(r1) /* 800449F4 00041954 48 00 7B 81 */ bl ObjectById__13CStateManagerF9TUniqueId /* 800449F8 00041958 7C 7E 1B 79 */ or. r30, r3, r3 /* 800449FC 0004195C 41 82 00 14 */ beq lbl_80044A10 /* 80044A00 00041960 7F A4 EB 78 */ mr r4, r29 /* 80044A04 00041964 48 10 CE 65 */ bl ShouldSkipCinematic__22CScriptSpecialFunctionFR13CStateManager /* 80044A08 00041968 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80044A0C 0004196C 40 82 00 0C */ bne lbl_80044A18 lbl_80044A10: /* 80044A10 00041970 38 60 00 00 */ li r3, 0 /* 80044A14 00041974 48 00 00 50 */ b lbl_80044A64 lbl_80044A18: /* 80044A18 00041978 80 7D 09 00 */ lwz r3, 0x900(r29) /* 80044A1C 0004197C 38 1D 08 FC */ addi r0, r29, 0x8fc /* 80044A20 00041980 7F A4 EB 78 */ mr r4, r29 /* 80044A24 00041984 90 1D 09 00 */ stw r0, 0x900(r29) /* 80044A28 00041988 7C 03 00 D0 */ neg r0, r3 /* 80044A2C 0004198C 7C 00 1B 78 */ or r0, r0, r3 /* 80044A30 00041990 80 7D 08 70 */ lwz r3, 0x870(r29) /* 80044A34 00041994 54 1F 0F FE */ srwi r31, r0, 0x1f /* 80044A38 00041998 4B FC 65 61 */ bl SkipCinematic__14CCameraManagerFR13CStateManager /* 80044A3C 0004199C 7F C3 F3 78 */ mr r3, r30 /* 80044A40 000419A0 7F A4 EB 78 */ mr r4, r29 /* 80044A44 000419A4 48 10 CD E1 */ bl SkipCinematic__22CScriptSpecialFunctionFR13CStateManager /* 80044A48 000419A8 28 1F 00 00 */ cmplwi r31, 0 /* 80044A4C 000419AC 41 82 00 0C */ beq lbl_80044A58 /* 80044A50 000419B0 38 1D 08 FC */ addi r0, r29, 0x8fc /* 80044A54 000419B4 48 00 00 08 */ b lbl_80044A5C lbl_80044A58: /* 80044A58 000419B8 38 00 00 00 */ li r0, 0 lbl_80044A5C: /* 80044A5C 000419BC 90 1D 09 00 */ stw r0, 0x900(r29) /* 80044A60 000419C0 38 60 00 01 */ li r3, 1 lbl_80044A64: /* 80044A64 000419C4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80044A68 000419C8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80044A6C 000419CC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80044A70 000419D0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80044A74 000419D4 7C 08 03 A6 */ mtlr r0 /* 80044A78 000419D8 38 21 00 20 */ addi r1, r1, 0x20 /* 80044A7C 000419DC 4E 80 00 20 */ blr .global GetVisAreaId__13CStateManagerCFv GetVisAreaId__13CStateManagerCFv: /* 80044A80 000419E0 94 21 F7 60 */ stwu r1, -0x8a0(r1) /* 80044A84 000419E4 7C 08 02 A6 */ mflr r0 /* 80044A88 000419E8 90 01 08 A4 */ stw r0, 0x8a4(r1) /* 80044A8C 000419EC BF 41 08 88 */ stmw r26, 0x888(r1) /* 80044A90 000419F0 7C 7D 1B 78 */ mr r29, r3 /* 80044A94 000419F4 7C 9E 23 78 */ mr r30, r4 /* 80044A98 000419F8 80 64 08 70 */ lwz r3, 0x870(r4) /* 80044A9C 000419FC 4B FC 70 7D */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 80044AA0 00041A00 80 BE 08 70 */ lwz r5, 0x870(r30) /* 80044AA4 00041A04 80 9E 08 50 */ lwz r4, 0x850(r30) /* 80044AA8 00041A08 80 C5 00 80 */ lwz r6, 0x80(r5) /* 80044AAC 00041A0C 83 E4 00 68 */ lwz r31, 0x68(r4) /* 80044AB0 00041A10 7C 03 30 40 */ cmplw r3, r6 /* 80044AB4 00041A14 41 82 00 0C */ beq lbl_80044AC0 /* 80044AB8 00041A18 93 FD 00 00 */ stw r31, 0(r29) /* 80044ABC 00041A1C 48 00 01 D8 */ b lbl_80044C94 lbl_80044AC0: /* 80044AC0 00041A20 C0 46 00 60 */ lfs f2, 0x60(r6) /* 80044AC4 00041A24 38 81 00 20 */ addi r4, r1, 0x20 /* 80044AC8 00041A28 C0 26 00 50 */ lfs f1, 0x50(r6) /* 80044ACC 00041A2C 7C 85 23 78 */ mr r5, r4 /* 80044AD0 00041A30 C0 06 00 40 */ lfs f0, 0x40(r6) /* 80044AD4 00041A34 38 61 00 60 */ addi r3, r1, 0x60 /* 80044AD8 00041A38 80 DE 08 4C */ lwz r6, 0x84c(r30) /* 80044ADC 00041A3C D0 01 00 20 */ stfs f0, 0x20(r1) /* 80044AE0 00041A40 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80044AE4 00041A44 D0 41 00 28 */ stfs f2, 0x28(r1) /* 80044AE8 00041A48 C0 46 00 60 */ lfs f2, 0x60(r6) /* 80044AEC 00041A4C C0 26 00 50 */ lfs f1, 0x50(r6) /* 80044AF0 00041A50 C0 06 00 40 */ lfs f0, 0x40(r6) /* 80044AF4 00041A54 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80044AF8 00041A58 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80044AFC 00041A5C D0 41 00 1C */ stfs f2, 0x1c(r1) /* 80044B00 00041A60 48 2F 3A 09 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80044B04 00041A64 38 61 00 60 */ addi r3, r1, 0x60 /* 80044B08 00041A68 38 81 00 14 */ addi r4, r1, 0x14 /* 80044B0C 00041A6C 48 2F 2F FD */ bl AccumulateBounds__6CAABoxFRC9CVector3f /* 80044B10 00041A70 38 00 00 00 */ li r0, 0 /* 80044B14 00041A74 80 AD 82 98 */ lwz r5, lbl_805A6E58@sda21(r13) /* 80044B18 00041A78 90 01 00 78 */ stw r0, 0x78(r1) /* 80044B1C 00041A7C 38 60 00 00 */ li r3, 0 /* 80044B20 00041A80 38 80 00 01 */ li r4, 1 /* 80044B24 00041A84 48 34 53 D1 */ bl __shl2i /* 80044B28 00041A88 39 00 00 01 */ li r8, 1 /* 80044B2C 00041A8C 38 00 00 00 */ li r0, 0 /* 80044B30 00041A90 90 81 00 4C */ stw r4, 0x4c(r1) /* 80044B34 00041A94 38 81 00 78 */ addi r4, r1, 0x78 /* 80044B38 00041A98 38 A1 00 60 */ addi r5, r1, 0x60 /* 80044B3C 00041A9C 38 C1 00 48 */ addi r6, r1, 0x48 /* 80044B40 00041AA0 90 61 00 48 */ stw r3, 0x48(r1) /* 80044B44 00041AA4 7F C3 F3 78 */ mr r3, r30 /* 80044B48 00041AA8 38 E0 00 00 */ li r7, 0 /* 80044B4C 00041AAC 91 01 00 40 */ stw r8, 0x40(r1) /* 80044B50 00041AB0 90 01 00 54 */ stw r0, 0x54(r1) /* 80044B54 00041AB4 90 01 00 50 */ stw r0, 0x50(r1) /* 80044B58 00041AB8 91 01 00 58 */ stw r8, 0x58(r1) /* 80044B5C 00041ABC 48 00 7B C5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" /* 80044B60 00041AC0 3B 61 00 7C */ addi r27, r1, 0x7c /* 80044B64 00041AC4 7F 7A DB 78 */ mr r26, r27 /* 80044B68 00041AC8 48 00 00 C0 */ b lbl_80044C28 lbl_80044B6C: /* 80044B6C 00041ACC A0 1A 00 00 */ lhz r0, 0(r26) /* 80044B70 00041AD0 7F C3 F3 78 */ mr r3, r30 /* 80044B74 00041AD4 38 81 00 08 */ addi r4, r1, 8 /* 80044B78 00041AD8 B0 01 00 08 */ sth r0, 8(r1) /* 80044B7C 00041ADC 48 00 7A 29 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80044B80 00041AE0 7C 64 1B 78 */ mr r4, r3 /* 80044B84 00041AE4 38 61 00 0C */ addi r3, r1, 0xc /* 80044B88 00041AE8 48 06 58 7D */ bl "__ct__25TCastToPtr<11CScriptDock>FP7CEntity" /* 80044B8C 00041AEC 83 83 00 04 */ lwz r28, 4(r3) /* 80044B90 00041AF0 28 1C 00 00 */ cmplwi r28, 0 /* 80044B94 00041AF4 41 82 00 90 */ beq lbl_80044C24 /* 80044B98 00041AF8 80 1C 02 60 */ lwz r0, 0x260(r28) /* 80044B9C 00041AFC 7C 00 F8 00 */ cmpw r0, r31 /* 80044BA0 00041B00 40 82 00 84 */ bne lbl_80044C24 /* 80044BA4 00041B04 7F 83 E3 78 */ mr r3, r28 /* 80044BA8 00041B08 7F C4 F3 78 */ mr r4, r30 /* 80044BAC 00041B0C 38 A1 00 20 */ addi r5, r1, 0x20 /* 80044BB0 00041B10 48 07 EE 65 */ bl HasPointCrossedDock__11CScriptDockCFRC13CStateManagerRC9CVector3f /* 80044BB4 00041B14 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80044BB8 00041B18 41 82 00 6C */ beq lbl_80044C24 /* 80044BBC 00041B1C 7F A3 EB 78 */ mr r3, r29 /* 80044BC0 00041B20 7F 84 E3 78 */ mr r4, r28 /* 80044BC4 00041B24 7F C5 F3 78 */ mr r5, r30 /* 80044BC8 00041B28 48 07 EB 39 */ bl GetCurrentConnectedAreaId__11CScriptDockCFRC13CStateManager /* 80044BCC 00041B2C 80 A1 00 78 */ lwz r5, 0x78(r1) /* 80044BD0 00041B30 38 60 00 00 */ li r3, 0 /* 80044BD4 00041B34 2C 05 00 00 */ cmpwi r5, 0 /* 80044BD8 00041B38 40 81 00 40 */ ble lbl_80044C18 /* 80044BDC 00041B3C 2C 05 00 08 */ cmpwi r5, 8 /* 80044BE0 00041B40 38 85 FF F8 */ addi r4, r5, -8 /* 80044BE4 00041B44 40 81 00 20 */ ble lbl_80044C04 /* 80044BE8 00041B48 38 04 00 07 */ addi r0, r4, 7 /* 80044BEC 00041B4C 54 00 E8 FE */ srwi r0, r0, 3 /* 80044BF0 00041B50 7C 09 03 A6 */ mtctr r0 /* 80044BF4 00041B54 2C 04 00 00 */ cmpwi r4, 0 /* 80044BF8 00041B58 40 81 00 0C */ ble lbl_80044C04 lbl_80044BFC: /* 80044BFC 00041B5C 38 63 00 08 */ addi r3, r3, 8 /* 80044C00 00041B60 42 00 FF FC */ bdnz lbl_80044BFC lbl_80044C04: /* 80044C04 00041B64 7C 03 28 50 */ subf r0, r3, r5 /* 80044C08 00041B68 7C 09 03 A6 */ mtctr r0 /* 80044C0C 00041B6C 7C 03 28 00 */ cmpw r3, r5 /* 80044C10 00041B70 40 80 00 08 */ bge lbl_80044C18 lbl_80044C14: /* 80044C14 00041B74 42 00 00 00 */ bdnz lbl_80044C14 lbl_80044C18: /* 80044C18 00041B78 38 00 00 00 */ li r0, 0 /* 80044C1C 00041B7C 90 01 00 78 */ stw r0, 0x78(r1) /* 80044C20 00041B80 48 00 00 74 */ b lbl_80044C94 lbl_80044C24: /* 80044C24 00041B84 3B 5A 00 02 */ addi r26, r26, 2 lbl_80044C28: /* 80044C28 00041B88 80 01 00 78 */ lwz r0, 0x78(r1) /* 80044C2C 00041B8C 54 00 08 3C */ slwi r0, r0, 1 /* 80044C30 00041B90 7C 1B 02 14 */ add r0, r27, r0 /* 80044C34 00041B94 7C 1A 00 40 */ cmplw r26, r0 /* 80044C38 00041B98 40 82 FF 34 */ bne lbl_80044B6C /* 80044C3C 00041B9C 93 FD 00 00 */ stw r31, 0(r29) /* 80044C40 00041BA0 38 60 00 00 */ li r3, 0 /* 80044C44 00041BA4 80 A1 00 78 */ lwz r5, 0x78(r1) /* 80044C48 00041BA8 2C 05 00 00 */ cmpwi r5, 0 /* 80044C4C 00041BAC 40 81 00 40 */ ble lbl_80044C8C /* 80044C50 00041BB0 2C 05 00 08 */ cmpwi r5, 8 /* 80044C54 00041BB4 38 85 FF F8 */ addi r4, r5, -8 /* 80044C58 00041BB8 40 81 00 20 */ ble lbl_80044C78 /* 80044C5C 00041BBC 38 04 00 07 */ addi r0, r4, 7 /* 80044C60 00041BC0 54 00 E8 FE */ srwi r0, r0, 3 /* 80044C64 00041BC4 7C 09 03 A6 */ mtctr r0 /* 80044C68 00041BC8 2C 04 00 00 */ cmpwi r4, 0 /* 80044C6C 00041BCC 40 81 00 0C */ ble lbl_80044C78 lbl_80044C70: /* 80044C70 00041BD0 38 63 00 08 */ addi r3, r3, 8 /* 80044C74 00041BD4 42 00 FF FC */ bdnz lbl_80044C70 lbl_80044C78: /* 80044C78 00041BD8 7C 03 28 50 */ subf r0, r3, r5 /* 80044C7C 00041BDC 7C 09 03 A6 */ mtctr r0 /* 80044C80 00041BE0 7C 03 28 00 */ cmpw r3, r5 /* 80044C84 00041BE4 40 80 00 08 */ bge lbl_80044C8C lbl_80044C88: /* 80044C88 00041BE8 42 00 00 00 */ bdnz lbl_80044C88 lbl_80044C8C: /* 80044C8C 00041BEC 38 00 00 00 */ li r0, 0 /* 80044C90 00041BF0 90 01 00 78 */ stw r0, 0x78(r1) lbl_80044C94: /* 80044C94 00041BF4 BB 41 08 88 */ lmw r26, 0x888(r1) /* 80044C98 00041BF8 80 01 08 A4 */ lwz r0, 0x8a4(r1) /* 80044C9C 00041BFC 7C 08 03 A6 */ mtlr r0 /* 80044CA0 00041C00 38 21 08 A0 */ addi r1, r1, 0x8a0 /* 80044CA4 00041C04 4E 80 00 20 */ blr .global GetWeaponIdCount__13CStateManagerF9TUniqueId11EWeaponType GetWeaponIdCount__13CStateManagerF9TUniqueId11EWeaponType: /* 80044CA8 00041C08 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044CAC 00041C0C 7C 08 02 A6 */ mflr r0 /* 80044CB0 00041C10 90 01 00 14 */ stw r0, 0x14(r1) /* 80044CB4 00041C14 A0 04 00 00 */ lhz r0, 0(r4) /* 80044CB8 00041C18 38 81 00 08 */ addi r4, r1, 8 /* 80044CBC 00041C1C B0 01 00 08 */ sth r0, 8(r1) /* 80044CC0 00041C20 80 63 08 78 */ lwz r3, 0x878(r3) /* 80044CC4 00041C24 48 07 D0 65 */ bl GetNumActive__10CWeaponMgrCF9TUniqueId11EWeaponType /* 80044CC8 00041C28 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044CCC 00041C2C 7C 08 03 A6 */ mtlr r0 /* 80044CD0 00041C30 38 21 00 10 */ addi r1, r1, 0x10 /* 80044CD4 00041C34 4E 80 00 20 */ blr .global RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType: /* 80044CD8 00041C38 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044CDC 00041C3C 7C 08 02 A6 */ mflr r0 /* 80044CE0 00041C40 90 01 00 14 */ stw r0, 0x14(r1) /* 80044CE4 00041C44 A0 04 00 00 */ lhz r0, 0(r4) /* 80044CE8 00041C48 38 81 00 08 */ addi r4, r1, 8 /* 80044CEC 00041C4C B0 01 00 08 */ sth r0, 8(r1) /* 80044CF0 00041C50 80 63 08 78 */ lwz r3, 0x878(r3) /* 80044CF4 00041C54 48 07 D0 F5 */ bl DecrCount__10CWeaponMgrF9TUniqueId11EWeaponType /* 80044CF8 00041C58 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044CFC 00041C5C 7C 08 03 A6 */ mtlr r0 /* 80044D00 00041C60 38 21 00 10 */ addi r1, r1, 0x10 /* 80044D04 00041C64 4E 80 00 20 */ blr .global AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType: /* 80044D08 00041C68 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044D0C 00041C6C 7C 08 02 A6 */ mflr r0 /* 80044D10 00041C70 90 01 00 14 */ stw r0, 0x14(r1) /* 80044D14 00041C74 A0 04 00 00 */ lhz r0, 0(r4) /* 80044D18 00041C78 38 81 00 08 */ addi r4, r1, 8 /* 80044D1C 00041C7C B0 01 00 08 */ sth r0, 8(r1) /* 80044D20 00041C80 80 63 08 78 */ lwz r3, 0x878(r3) /* 80044D24 00041C84 48 07 D1 E9 */ bl IncrCount__10CWeaponMgrF9TUniqueId11EWeaponType /* 80044D28 00041C88 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044D2C 00041C8C 7C 08 03 A6 */ mtlr r0 /* 80044D30 00041C90 38 21 00 10 */ addi r1, r1, 0x10 /* 80044D34 00041C94 4E 80 00 20 */ blr .global UpdateHintState__13CStateManagerFf UpdateHintState__13CStateManagerFf: /* 80044D38 00041C98 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80044D3C 00041C9C 7C 08 02 A6 */ mflr r0 /* 80044D40 00041CA0 90 01 00 74 */ stw r0, 0x74(r1) /* 80044D44 00041CA4 BE E1 00 4C */ stmw r23, 0x4c(r1) /* 80044D48 00041CA8 7C 7B 1B 78 */ mr r27, r3 /* 80044D4C 00041CAC 7F 64 DB 78 */ mr r4, r27 /* 80044D50 00041CB0 80 AD A0 80 */ lwz r5, gpGameState@sda21(r13) /* 80044D54 00041CB4 3B 25 01 F8 */ addi r25, r5, 0x1f8 /* 80044D58 00041CB8 7F 23 CB 78 */ mr r3, r25 /* 80044D5C 00041CBC 48 22 2B C9 */ bl Update__12CHintOptionsfRC13CStateManager /* 80044D60 00041CC0 7F 23 CB 78 */ mr r3, r25 /* 80044D64 00041CC4 3B C0 FF FF */ li r30, -1 /* 80044D68 00041CC8 3B A0 FF FF */ li r29, -1 /* 80044D6C 00041CCC 48 22 29 B1 */ bl GetCurrentDisplayedHint__12CHintOptionsCFv /* 80044D70 00041CD0 7C 7A 1B 79 */ or. r26, r3, r3 /* 80044D74 00041CD4 41 82 00 C8 */ beq lbl_80044E3C /* 80044D78 00041CD8 7F 23 CB 78 */ mr r3, r25 /* 80044D7C 00041CDC 48 22 29 81 */ bl GetNextHintIdx__12CHintOptionsFv /* 80044D80 00041CE0 80 8D A0 84 */ lwz r4, gpMemoryCard@sda21(r13) /* 80044D84 00041CE4 1C 03 00 30 */ mulli r0, r3, 0x30 /* 80044D88 00041CE8 3B 80 00 00 */ li r28, 0 /* 80044D8C 00041CEC 80 64 00 08 */ lwz r3, 8(r4) /* 80044D90 00041CF0 3B E0 00 00 */ li r31, 0 /* 80044D94 00041CF4 80 63 00 0C */ lwz r3, 0xc(r3) /* 80044D98 00041CF8 7F 03 02 14 */ add r24, r3, r0 /* 80044D9C 00041CFC 48 00 00 60 */ b lbl_80044DFC lbl_80044DA0: /* 80044DA0 00041D00 80 18 00 2C */ lwz r0, 0x2c(r24) /* 80044DA4 00041D04 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 80044DA8 00041D08 7C 80 FA 14 */ add r4, r0, r31 /* 80044DAC 00041D0C 82 E4 00 08 */ lwz r23, 8(r4) /* 80044DB0 00041D10 80 84 00 00 */ lwz r4, 0(r4) /* 80044DB4 00041D14 48 18 EC 25 */ bl StateForWorld__10CGameStateFUi /* 80044DB8 00041D18 48 18 FF C9 */ bl MapWorldInfo__11CWorldStateFv /* 80044DBC 00041D1C 80 C3 00 00 */ lwz r6, 0(r3) /* 80044DC0 00041D20 38 81 00 0C */ addi r4, r1, 0xc /* 80044DC4 00041D24 92 E1 00 08 */ stw r23, 8(r1) /* 80044DC8 00041D28 38 A0 00 01 */ li r5, 1 /* 80044DCC 00041D2C 90 C1 00 10 */ stw r6, 0x10(r1) /* 80044DD0 00041D30 80 66 00 04 */ lwz r3, 4(r6) /* 80044DD4 00041D34 38 03 00 01 */ addi r0, r3, 1 /* 80044DD8 00041D38 90 06 00 04 */ stw r0, 4(r6) /* 80044DDC 00041D3C 92 E1 00 0C */ stw r23, 0xc(r1) /* 80044DE0 00041D40 80 61 00 10 */ lwz r3, 0x10(r1) /* 80044DE4 00041D44 80 63 00 00 */ lwz r3, 0(r3) /* 80044DE8 00041D48 48 12 36 99 */ bl SetIsMapped__13CMapWorldInfoCF7TAreaId /* 80044DEC 00041D4C 38 61 00 10 */ addi r3, r1, 0x10 /* 80044DF0 00041D50 4B FC 3E 4D */ bl sub_80008c3c /* 80044DF4 00041D54 3B FF 00 10 */ addi r31, r31, 0x10 /* 80044DF8 00041D58 3B 9C 00 01 */ addi r28, r28, 1 lbl_80044DFC: /* 80044DFC 00041D5C 80 18 00 24 */ lwz r0, 0x24(r24) /* 80044E00 00041D60 7C 1C 00 00 */ cmpw r28, r0 /* 80044E04 00041D64 41 80 FF 9C */ blt lbl_80044DA0 /* 80044E08 00041D68 C0 3A 00 04 */ lfs f1, 4(r26) /* 80044E0C 00041D6C C0 18 00 1C */ lfs f0, 0x1c(r24) /* 80044E10 00041D70 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80044E14 00041D74 40 80 00 28 */ bge lbl_80044E3C /* 80044E18 00041D78 7F 23 CB 78 */ mr r3, r25 /* 80044E1C 00041D7C 48 22 28 E1 */ bl GetNextHintIdx__12CHintOptionsFv /* 80044E20 00041D80 C0 3A 00 04 */ lfs f1, 4(r26) /* 80044E24 00041D84 7C 7E 1B 78 */ mr r30, r3 /* 80044E28 00041D88 C0 02 BA D8 */ lfs f0, lbl_805AD7F8@sda21(r2) /* 80044E2C 00041D8C EC 01 00 24 */ fdivs f0, f1, f0 /* 80044E30 00041D90 FC 00 00 1E */ fctiwz f0, f0 /* 80044E34 00041D94 D8 01 00 38 */ stfd f0, 0x38(r1) /* 80044E38 00041D98 83 A1 00 3C */ lwz r29, 0x3c(r1) lbl_80044E3C: /* 80044E3C 00041D9C 80 1B 0E EC */ lwz r0, 0xeec(r27) /* 80044E40 00041DA0 7C 1E 00 00 */ cmpw r30, r0 /* 80044E44 00041DA4 40 82 00 10 */ bne lbl_80044E54 /* 80044E48 00041DA8 80 1B 0E F0 */ lwz r0, 0xef0(r27) /* 80044E4C 00041DAC 7C 1D 00 00 */ cmpw r29, r0 /* 80044E50 00041DB0 41 82 00 90 */ beq lbl_80044EE0 lbl_80044E54: /* 80044E54 00041DB4 2C 1E FF FF */ cmpwi r30, -1 /* 80044E58 00041DB8 40 82 00 40 */ bne lbl_80044E98 /* 80044E5C 00041DBC 38 61 00 24 */ addi r3, r1, 0x24 /* 80044E60 00041DC0 38 8D 82 A4 */ addi r4, r13, lbl_805A6E64@sda21 /* 80044E64 00041DC4 4B FD 0B 8D */ bl wstring_l__4rstlFPCw /* 80044E68 00041DC8 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80044E6C 00041DCC 38 00 00 01 */ li r0, 1 /* 80044E70 00041DD0 98 01 00 20 */ stb r0, 0x20(r1) /* 80044E74 00041DD4 38 61 00 24 */ addi r3, r1, 0x24 /* 80044E78 00041DD8 38 81 00 1C */ addi r4, r1, 0x1c /* 80044E7C 00041DDC D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80044E80 00041DE0 98 01 00 21 */ stb r0, 0x21(r1) /* 80044E84 00041DE4 98 01 00 22 */ stb r0, 0x22(r1) /* 80044E88 00041DE8 48 02 6D E1 */ bl DisplayHudMemo__9CSamusHudFRC7wstringRC12SHudMemoInfo /* 80044E8C 00041DEC 38 61 00 24 */ addi r3, r1, 0x24 /* 80044E90 00041DF0 48 2F 82 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80044E94 00041DF4 48 00 00 44 */ b lbl_80044ED8 lbl_80044E98: /* 80044E98 00041DF8 80 8D A0 84 */ lwz r4, gpMemoryCard@sda21(r13) /* 80044E9C 00041DFC 1C DE 00 30 */ mulli r6, r30, 0x30 /* 80044EA0 00041E00 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80044EA4 00041E04 38 60 00 01 */ li r3, 1 /* 80044EA8 00041E08 80 A4 00 08 */ lwz r5, 8(r4) /* 80044EAC 00041E0C 38 00 00 00 */ li r0, 0 /* 80044EB0 00041E10 7F A4 EB 78 */ mr r4, r29 /* 80044EB4 00041E14 80 E5 00 0C */ lwz r7, 0xc(r5) /* 80044EB8 00041E18 38 A1 00 14 */ addi r5, r1, 0x14 /* 80044EBC 00041E1C D0 01 00 14 */ stfs f0, 0x14(r1) /* 80044EC0 00041E20 7C C7 32 14 */ add r6, r7, r6 /* 80044EC4 00041E24 98 61 00 18 */ stb r3, 0x18(r1) /* 80044EC8 00041E28 98 01 00 19 */ stb r0, 0x19(r1) /* 80044ECC 00041E2C 98 61 00 1A */ stb r3, 0x1a(r1) /* 80044ED0 00041E30 80 66 00 18 */ lwz r3, 0x18(r6) /* 80044ED4 00041E34 48 02 6D 51 */ bl DeferHintMemo__9CSamusHudFUiUiRC12SHudMemoInfo lbl_80044ED8: /* 80044ED8 00041E38 93 DB 0E EC */ stw r30, 0xeec(r27) /* 80044EDC 00041E3C 93 BB 0E F0 */ stw r29, 0xef0(r27) lbl_80044EE0: /* 80044EE0 00041E40 BA E1 00 4C */ lmw r23, 0x4c(r1) /* 80044EE4 00041E44 80 01 00 74 */ lwz r0, 0x74(r1) /* 80044EE8 00041E48 7C 08 03 A6 */ mtlr r0 /* 80044EEC 00041E4C 38 21 00 70 */ addi r1, r1, 0x70 /* 80044EF0 00041E50 4E 80 00 20 */ blr .global UpdateEscapeSequenceTimer__13CStateManagerFf UpdateEscapeSequenceTimer__13CStateManagerFf: /* 80044EF4 00041E54 94 21 FF 00 */ stwu r1, -0x100(r1) /* 80044EF8 00041E58 7C 08 02 A6 */ mflr r0 /* 80044EFC 00041E5C 90 01 01 04 */ stw r0, 0x104(r1) /* 80044F00 00041E60 DB E1 00 F0 */ stfd f31, 0xf0(r1) /* 80044F04 00041E64 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 /* 80044F08 00041E68 93 E1 00 EC */ stw r31, 0xec(r1) /* 80044F0C 00041E6C 7C 7F 1B 78 */ mr r31, r3 /* 80044F10 00041E70 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80044F14 00041E74 C0 43 0F 0C */ lfs f2, 0xf0c(r3) /* 80044F18 00041E78 C0 63 0F 10 */ lfs f3, 0xf10(r3) /* 80044F1C 00041E7C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80044F20 00041E80 40 81 01 38 */ ble lbl_80045058 /* 80044F24 00041E84 EC 42 08 28 */ fsubs f2, f2, f1 /* 80044F28 00041E88 C0 02 85 84 */ lfs f0, lbl_805AA2A4@sda21(r2) /* 80044F2C 00041E8C FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80044F30 00041E90 D0 41 00 08 */ stfs f2, 8(r1) /* 80044F34 00041E94 40 80 00 0C */ bge lbl_80044F40 /* 80044F38 00041E98 38 61 00 08 */ addi r3, r1, 8 /* 80044F3C 00041E9C 48 00 00 08 */ b lbl_80044F44 lbl_80044F40: /* 80044F40 00041EA0 38 62 85 84 */ addi r3, r2, lbl_805AA2A4@sda21 lbl_80044F44: /* 80044F44 00041EA4 C0 43 00 00 */ lfs f2, 0(r3) /* 80044F48 00041EA8 C0 02 85 88 */ lfs f0, lbl_805AA2A8@sda21(r2) /* 80044F4C 00041EAC D0 5F 0F 0C */ stfs f2, 0xf0c(r31) /* 80044F50 00041EB0 C0 5F 0F 0C */ lfs f2, 0xf0c(r31) /* 80044F54 00041EB4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80044F58 00041EB8 4C 40 13 82 */ cror 2, 0, 2 /* 80044F5C 00041EBC 40 82 00 1C */ bne lbl_80044F78 /* 80044F60 00041EC0 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80044F64 00041EC4 38 80 00 00 */ li r4, 0 /* 80044F68 00041EC8 80 63 00 00 */ lwz r3, 0(r3) /* 80044F6C 00041ECC 88 03 00 00 */ lbz r0, 0(r3) /* 80044F70 00041ED0 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 /* 80044F74 00041ED4 98 03 00 00 */ stb r0, 0(r3) lbl_80044F78: /* 80044F78 00041ED8 88 0D A2 0C */ lbz r0, lbl_805A8DCC@sda21(r13) /* 80044F7C 00041EDC 7C 00 07 75 */ extsb. r0, r0 /* 80044F80 00041EE0 40 82 00 14 */ bne lbl_80044F94 /* 80044F84 00041EE4 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80044F88 00041EE8 38 00 00 01 */ li r0, 1 /* 80044F8C 00041EEC 98 0D A2 0C */ stb r0, lbl_805A8DCC@sda21(r13) /* 80044F90 00041EF0 D0 0D A2 08 */ stfs f0, lbl_805A8DC8@sda21(r13) lbl_80044F94: /* 80044F94 00041EF4 C0 4D A2 08 */ lfs f2, lbl_805A8DC8@sda21(r13) /* 80044F98 00041EF8 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80044F9C 00041EFC EC 22 08 28 */ fsubs f1, f2, f1 /* 80044FA0 00041F00 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80044FA4 00041F04 D0 2D A2 08 */ stfs f1, lbl_805A8DC8@sda21(r13) /* 80044FA8 00041F08 40 80 00 B0 */ bge lbl_80045058 /* 80044FAC 00041F0C C0 1F 0F 0C */ lfs f0, 0xf0c(r31) /* 80044FB0 00041F10 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80044FB4 00041F14 EC 00 18 24 */ fdivs f0, f0, f3 /* 80044FB8 00041F18 80 7F 09 00 */ lwz r3, 0x900(r31) /* 80044FBC 00041F1C C0 22 85 7C */ lfs f1, lbl_805AA29C@sda21(r2) /* 80044FC0 00041F20 EC 02 00 28 */ fsubs f0, f2, f0 /* 80044FC4 00041F24 EF E0 00 32 */ fmuls f31, f0, f0 /* 80044FC8 00041F28 48 2C D5 7D */ bl Range__9CRandom16Fff /* 80044FCC 00041F2C C0 02 85 8C */ lfs f0, lbl_805AA2AC@sda21(r2) /* 80044FD0 00041F30 38 61 00 0C */ addi r3, r1, 0xc /* 80044FD4 00041F34 EC 00 07 F2 */ fmuls f0, f0, f31 /* 80044FD8 00041F38 EC 40 00 72 */ fmuls f2, f0, f1 /* 80044FDC 00041F3C C0 22 85 64 */ lfs f1, lbl_805AA284@sda21(r2) /* 80044FE0 00041F40 48 11 88 51 */ bl __ct__16CCameraShakeDataFff /* 80044FE4 00041F44 80 7F 08 70 */ lwz r3, 0x870(r31) /* 80044FE8 00041F48 38 81 00 0C */ addi r4, r1, 0xc /* 80044FEC 00041F4C 38 A0 00 01 */ li r5, 1 /* 80044FF0 00041F50 4B FC 5A 31 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab /* 80044FF4 00041F54 34 81 00 8C */ addic. r4, r1, 0x8c /* 80044FF8 00041F58 41 82 00 10 */ beq lbl_80045008 /* 80044FFC 00041F5C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 80045000 00041F60 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 80045004 00041F64 90 04 00 00 */ stw r0, 0(r4) lbl_80045008: /* 80045008 00041F68 34 81 00 50 */ addic. r4, r1, 0x50 /* 8004500C 00041F6C 41 82 00 10 */ beq lbl_8004501C /* 80045010 00041F70 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 80045014 00041F74 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 80045018 00041F78 90 04 00 00 */ stw r0, 0(r4) lbl_8004501C: /* 8004501C 00041F7C 34 81 00 14 */ addic. r4, r1, 0x14 /* 80045020 00041F80 41 82 00 10 */ beq lbl_80045030 /* 80045024 00041F84 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 80045028 00041F88 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 8004502C 00041F8C 90 04 00 00 */ stw r0, 0(r4) lbl_80045030: /* 80045030 00041F90 80 7F 08 8C */ lwz r3, 0x88c(r31) /* 80045034 00041F94 7F E4 FB 78 */ mr r4, r31 /* 80045038 00041F98 C0 22 85 90 */ lfs f1, lbl_805AA2B0@sda21(r2) /* 8004503C 00041F9C 38 A0 00 0B */ li r5, 0xb /* 80045040 00041FA0 38 C0 00 01 */ li r6, 1 /* 80045044 00041FA4 48 1E 92 01 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority /* 80045048 00041FA8 C0 22 85 98 */ lfs f1, lbl_805AA2B8@sda21(r2) /* 8004504C 00041FAC C0 02 85 94 */ lfs f0, lbl_805AA2B4@sda21(r2) /* 80045050 00041FB0 EC 01 07 FA */ fmadds f0, f1, f31, f0 /* 80045054 00041FB4 D0 0D A2 08 */ stfs f0, lbl_805A8DC8@sda21(r13) lbl_80045058: /* 80045058 00041FB8 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 /* 8004505C 00041FBC 80 01 01 04 */ lwz r0, 0x104(r1) /* 80045060 00041FC0 CB E1 00 F0 */ lfd f31, 0xf0(r1) /* 80045064 00041FC4 83 E1 00 EC */ lwz r31, 0xec(r1) /* 80045068 00041FC8 7C 08 03 A6 */ mtlr r0 /* 8004506C 00041FCC 38 21 01 00 */ addi r1, r1, 0x100 /* 80045070 00041FD0 4E 80 00 20 */ blr .global GetEscapeSequenceTimer__13CStateManagerCFv GetEscapeSequenceTimer__13CStateManagerCFv: /* 80045074 00041FD4 C0 23 0F 0C */ lfs f1, 0xf0c(r3) /* 80045078 00041FD8 4E 80 00 20 */ blr .global ResetEscapeSequenceTimer__13CStateManagerFf ResetEscapeSequenceTimer__13CStateManagerFf: /* 8004507C 00041FDC D0 23 0F 0C */ stfs f1, 0xf0c(r3) /* 80045080 00041FE0 D0 23 0F 10 */ stfs f1, 0xf10(r3) /* 80045084 00041FE4 4E 80 00 20 */ blr .global SetupParticleHook__13CStateManagerCFRC6CActor SetupParticleHook__13CStateManagerCFRC6CActor: /* 80045088 00041FE8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004508C 00041FEC 7C 08 02 A6 */ mflr r0 /* 80045090 00041FF0 90 01 00 14 */ stw r0, 0x14(r1) /* 80045094 00041FF4 A0 04 00 08 */ lhz r0, 8(r4) /* 80045098 00041FF8 38 81 00 0C */ addi r4, r1, 0xc /* 8004509C 00041FFC 80 63 08 84 */ lwz r3, 0x884(r3) /* 800450A0 00042000 B0 01 00 08 */ sth r0, 8(r1) /* 800450A4 00042004 B0 01 00 0C */ sth r0, 0xc(r1) /* 800450A8 00042008 48 19 F6 C9 */ bl SetupHook__20CActorModelParticlesCF9TUniqueId /* 800450AC 0004200C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800450B0 00042010 7C 08 03 A6 */ mtlr r0 /* 800450B4 00042014 38 21 00 10 */ addi r1, r1, 0x10 /* 800450B8 00042018 4E 80 00 20 */ blr .global MurderScriptInstanceNames__13CStateManagerFv MurderScriptInstanceNames__13CStateManagerFv: /* 800450BC 0004201C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800450C0 00042020 7C 08 02 A6 */ mflr r0 /* 800450C4 00042024 90 01 00 34 */ stw r0, 0x34(r1) /* 800450C8 00042028 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800450CC 0004202C 7C 7F 1B 78 */ mr r31, r3 /* 800450D0 00042030 93 C1 00 28 */ stw r30, 0x28(r1) /* 800450D4 00042034 93 A1 00 24 */ stw r29, 0x24(r1) /* 800450D8 00042038 3B BF 0B 48 */ addi r29, r31, 0xb48 /* 800450DC 0004203C 93 81 00 20 */ stw r28, 0x20(r1) /* 800450E0 00042040 3B 80 00 00 */ li r28, 0 /* 800450E4 00042044 93 A1 00 0C */ stw r29, 0xc(r1) /* 800450E8 00042048 48 00 00 D4 */ b lbl_800451BC lbl_800450EC: /* 800450EC 0004204C 80 1F 0B 48 */ lwz r0, 0xb48(r31) /* 800450F0 00042050 3B C0 00 00 */ li r30, 0 /* 800450F4 00042054 93 A1 00 1C */ stw r29, 0x1c(r1) /* 800450F8 00042058 3B 80 00 01 */ li r28, 1 /* 800450FC 0004205C 90 01 00 18 */ stw r0, 0x18(r1) /* 80045100 00042060 93 C1 00 08 */ stw r30, 8(r1) /* 80045104 00042064 48 00 00 94 */ b lbl_80045198 lbl_80045108: /* 80045108 00042068 80 64 00 14 */ lwz r3, 0x14(r4) /* 8004510C 0004206C 28 03 00 00 */ cmplwi r3, 0 /* 80045110 00042070 41 82 00 0C */ beq lbl_8004511C /* 80045114 00042074 80 03 00 04 */ lwz r0, 4(r3) /* 80045118 00042078 48 00 00 08 */ b lbl_80045120 lbl_8004511C: /* 8004511C 0004207C 38 00 FF FF */ li r0, -1 lbl_80045120: /* 80045120 00042080 2C 00 00 01 */ cmpwi r0, 1 /* 80045124 00042084 40 82 00 68 */ bne lbl_8004518C /* 80045128 00042088 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004512C 0004208C 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80045130 00042090 93 C1 00 10 */ stw r30, 0x10(r1) /* 80045134 00042094 7F C4 F3 78 */ mr r4, r30 /* 80045138 00042098 90 61 00 14 */ stw r3, 0x14(r1) /* 8004513C 0004209C 48 2F 74 A5 */ bl rbtree_traverse_forward__4rstlFPCvPv /* 80045140 000420A0 90 61 00 10 */ stw r3, 0x10(r1) /* 80045144 000420A4 7F A3 EB 78 */ mr r3, r29 /* 80045148 000420A8 7F C4 F3 78 */ mr r4, r30 /* 8004514C 000420AC 48 2F 75 31 */ bl rbtree_rebalance_for_erase__4rstlFPvPv /* 80045150 000420B0 7C 7E 1B 79 */ or. r30, r3, r3 /* 80045154 000420B4 41 82 00 14 */ beq lbl_80045168 /* 80045158 000420B8 34 1E 00 10 */ addic. r0, r30, 0x10 /* 8004515C 000420BC 41 82 00 0C */ beq lbl_80045168 /* 80045160 000420C0 38 7E 00 10 */ addi r3, r30, 0x10 /* 80045164 000420C4 48 2F 89 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80045168: /* 80045168 000420C8 28 1E 00 00 */ cmplwi r30, 0 /* 8004516C 000420CC 41 82 00 0C */ beq lbl_80045178 /* 80045170 000420D0 7F C3 F3 78 */ mr r3, r30 /* 80045174 000420D4 48 2D 07 BD */ bl Free__7CMemoryFPCv lbl_80045178: /* 80045178 000420D8 80 7F 0B 44 */ lwz r3, 0xb44(r31) /* 8004517C 000420DC 3B 80 00 00 */ li r28, 0 /* 80045180 000420E0 38 03 FF FF */ addi r0, r3, -1 /* 80045184 000420E4 90 1F 0B 44 */ stw r0, 0xb44(r31) /* 80045188 000420E8 48 00 00 34 */ b lbl_800451BC lbl_8004518C: /* 8004518C 000420EC 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80045190 000420F0 48 2F 74 51 */ bl rbtree_traverse_forward__4rstlFPCvPv /* 80045194 000420F4 90 61 00 18 */ stw r3, 0x18(r1) lbl_80045198: /* 80045198 000420F8 80 81 00 18 */ lwz r4, 0x18(r1) /* 8004519C 000420FC 7F C0 F3 78 */ mr r0, r30 /* 800451A0 00042100 7C 04 F0 40 */ cmplw r4, r30 /* 800451A4 00042104 40 82 00 0C */ bne lbl_800451B0 /* 800451A8 00042108 7C 1D E8 40 */ cmplw r29, r29 /* 800451AC 0004210C 41 82 00 08 */ beq lbl_800451B4 lbl_800451B0: /* 800451B0 00042110 38 00 00 01 */ li r0, 1 lbl_800451B4: /* 800451B4 00042114 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 800451B8 00042118 40 82 FF 50 */ bne lbl_80045108 lbl_800451BC: /* 800451BC 0004211C 57 80 06 3F */ clrlwi. r0, r28, 0x18 /* 800451C0 00042120 41 82 FF 2C */ beq lbl_800450EC /* 800451C4 00042124 80 01 00 34 */ lwz r0, 0x34(r1) /* 800451C8 00042128 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800451CC 0004212C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800451D0 00042130 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800451D4 00042134 83 81 00 20 */ lwz r28, 0x20(r1) /* 800451D8 00042138 7C 08 03 A6 */ mtlr r0 /* 800451DC 0004213C 38 21 00 30 */ addi r1, r1, 0x30 /* 800451E0 00042140 4E 80 00 20 */ blr .global HashInstanceName__13CStateManagerFR12CInputStream HashInstanceName__13CStateManagerFR12CInputStream: /* 800451E4 00042144 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800451E8 00042148 7C 08 02 A6 */ mflr r0 /* 800451EC 0004214C 90 01 00 24 */ stw r0, 0x24(r1) /* 800451F0 00042150 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800451F4 00042154 7C 9F 23 78 */ mr r31, r4 /* 800451F8 00042158 88 0D A2 05 */ lbz r0, lbl_805A8DC5@sda21(r13) /* 800451FC 0004215C 7C 00 07 75 */ extsb. r0, r0 /* 80045200 00042160 40 82 00 4C */ bne lbl_8004524C /* 80045204 00042164 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 80045208 00042168 38 61 00 08 */ addi r3, r1, 8 /* 8004520C 0004216C 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 80045210 00042170 38 84 00 15 */ addi r4, r4, 0x15 /* 80045214 00042174 4B FB FA A5 */ bl string_l__4rstlFPCc /* 80045218 00042178 3C 60 80 46 */ lis r3, lbl_8045C5A4@ha /* 8004521C 0004217C 38 81 00 08 */ addi r4, r1, 8 /* 80045220 00042180 38 63 C5 A4 */ addi r3, r3, lbl_8045C5A4@l /* 80045224 00042184 48 2F 8F 3D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80045228 00042188 3C 80 80 00 */ lis r4, sub_80004a9c@ha /* 8004522C 0004218C 3C A0 80 46 */ lis r5, lbl_8045C598@ha /* 80045230 00042190 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l /* 80045234 00042194 38 A5 C5 98 */ addi r5, r5, lbl_8045C598@l /* 80045238 00042198 48 34 44 55 */ bl __register_global_object /* 8004523C 0004219C 38 61 00 08 */ addi r3, r1, 8 /* 80045240 000421A0 48 2F 88 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80045244 000421A4 38 00 00 01 */ li r0, 1 /* 80045248 000421A8 98 0D A2 05 */ stb r0, lbl_805A8DC5@sda21(r13) lbl_8004524C: /* 8004524C 000421AC 7F E3 FB 78 */ mr r3, r31 /* 80045250 000421B0 48 2F 9A BD */ bl ReadChar__12CInputStreamFv /* 80045254 000421B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80045258 000421B8 40 82 FF F4 */ bne lbl_8004524C /* 8004525C 000421BC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80045260 000421C0 3C 60 80 46 */ lis r3, lbl_8045C5A4@ha /* 80045264 000421C4 38 63 C5 A4 */ addi r3, r3, lbl_8045C5A4@l /* 80045268 000421C8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004526C 000421CC 7C 08 03 A6 */ mtlr r0 /* 80045270 000421D0 38 21 00 20 */ addi r1, r1, 0x20 /* 80045274 000421D4 4E 80 00 20 */ blr .global SetActorAreaId__13CStateManagerFR6CActor7TAreaId SetActorAreaId__13CStateManagerFR6CActor7TAreaId: /* 80045278 000421D8 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004527C 000421DC 7C 08 02 A6 */ mflr r0 /* 80045280 000421E0 90 01 00 44 */ stw r0, 0x44(r1) /* 80045284 000421E4 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80045288 000421E8 7C 9F 23 78 */ mr r31, r4 /* 8004528C 000421EC 93 C1 00 38 */ stw r30, 0x38(r1) /* 80045290 000421F0 93 A1 00 34 */ stw r29, 0x34(r1) /* 80045294 000421F4 7C BD 2B 78 */ mr r29, r5 /* 80045298 000421F8 80 A4 00 04 */ lwz r5, 4(r4) /* 8004529C 000421FC 80 1D 00 00 */ lwz r0, 0(r29) /* 800452A0 00042200 7C 05 00 00 */ cmpw r5, r0 /* 800452A4 00042204 41 82 00 C4 */ beq lbl_80045368 /* 800452A8 00042208 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 800452AC 0004220C 83 C3 08 50 */ lwz r30, 0x850(r3) /* 800452B0 00042210 7C 05 00 00 */ cmpw r5, r0 /* 800452B4 00042214 41 82 00 44 */ beq lbl_800452F8 /* 800452B8 00042218 54 A3 18 38 */ slwi r3, r5, 3 /* 800452BC 0004221C 80 9E 00 20 */ lwz r4, 0x20(r30) /* 800452C0 00042220 38 03 00 04 */ addi r0, r3, 4 /* 800452C4 00042224 90 A1 00 20 */ stw r5, 0x20(r1) /* 800452C8 00042228 7C 64 00 2E */ lwzx r3, r4, r0 /* 800452CC 0004222C 90 A1 00 24 */ stw r5, 0x24(r1) /* 800452D0 00042230 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 800452D4 00042234 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800452D8 00042238 41 82 00 20 */ beq lbl_800452F8 /* 800452DC 0004223C A0 1F 00 08 */ lhz r0, 8(r31) /* 800452E0 00042240 38 81 00 14 */ addi r4, r1, 0x14 /* 800452E4 00042244 B0 01 00 14 */ sth r0, 0x14(r1) /* 800452E8 00042248 80 63 01 2C */ lwz r3, 0x12c(r3) /* 800452EC 0004224C B0 01 00 10 */ sth r0, 0x10(r1) /* 800452F0 00042250 80 63 10 C0 */ lwz r3, 0x10c0(r3) /* 800452F4 00042254 4B FC AB B1 */ bl RemoveObject__11CObjectListF9TUniqueId lbl_800452F8: /* 800452F8 00042258 80 7D 00 00 */ lwz r3, 0(r29) /* 800452FC 0004225C 90 7F 00 04 */ stw r3, 4(r31) /* 80045300 00042260 80 BD 00 00 */ lwz r5, 0(r29) /* 80045304 00042264 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 80045308 00042268 90 61 00 1C */ stw r3, 0x1c(r1) /* 8004530C 0004226C 7C 05 00 00 */ cmpw r5, r0 /* 80045310 00042270 41 82 00 58 */ beq lbl_80045368 /* 80045314 00042274 54 A3 18 38 */ slwi r3, r5, 3 /* 80045318 00042278 80 9E 00 20 */ lwz r4, 0x20(r30) /* 8004531C 0004227C 38 03 00 04 */ addi r0, r3, 4 /* 80045320 00042280 90 A1 00 18 */ stw r5, 0x18(r1) /* 80045324 00042284 7F C4 00 2E */ lwzx r30, r4, r0 /* 80045328 00042288 88 1E 00 F0 */ lbz r0, 0xf0(r30) /* 8004532C 0004228C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80045330 00042290 41 82 00 38 */ beq lbl_80045368 /* 80045334 00042294 A0 1F 00 08 */ lhz r0, 8(r31) /* 80045338 00042298 38 81 00 0C */ addi r4, r1, 0xc /* 8004533C 0004229C B0 01 00 0C */ sth r0, 0xc(r1) /* 80045340 000422A0 80 7E 01 2C */ lwz r3, 0x12c(r30) /* 80045344 000422A4 B0 01 00 08 */ sth r0, 8(r1) /* 80045348 000422A8 80 63 10 C0 */ lwz r3, 0x10c0(r3) /* 8004534C 000422AC 4B FC AA 01 */ bl GetValidObjectById__11CObjectListCF9TUniqueId /* 80045350 000422B0 28 03 00 00 */ cmplwi r3, 0 /* 80045354 000422B4 40 82 00 14 */ bne lbl_80045368 /* 80045358 000422B8 80 7E 01 2C */ lwz r3, 0x12c(r30) /* 8004535C 000422BC 7F E4 FB 78 */ mr r4, r31 /* 80045360 000422C0 80 63 10 C0 */ lwz r3, 0x10c0(r3) /* 80045364 000422C4 4B FC AC 21 */ bl AddObject__11CObjectListFR7CEntity lbl_80045368: /* 80045368 000422C8 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004536C 000422CC 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80045370 000422D0 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80045374 000422D4 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80045378 000422D8 7C 08 03 A6 */ mtlr r0 /* 8004537C 000422DC 38 21 00 40 */ addi r1, r1, 0x40 /* 80045380 000422E0 4E 80 00 20 */ blr .global TouchPlayerActor__13CStateManagerFv TouchPlayerActor__13CStateManagerFv: /* 80045384 000422E4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045388 000422E8 7C 08 02 A6 */ mflr r0 /* 8004538C 000422EC 90 01 00 24 */ stw r0, 0x24(r1) /* 80045390 000422F0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045394 000422F4 7C 7F 1B 78 */ mr r31, r3 /* 80045398 000422F8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004539C 000422FC A0 83 0F 6C */ lhz r4, 0xf6c(r3) /* 800453A0 00042300 7C 04 00 40 */ cmplw r4, r0 /* 800453A4 00042304 41 82 00 20 */ beq lbl_800453C4 /* 800453A8 00042308 B0 81 00 08 */ sth r4, 8(r1) /* 800453AC 0004230C 38 81 00 08 */ addi r4, r1, 8 /* 800453B0 00042310 48 00 71 F5 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 800453B4 00042314 28 03 00 00 */ cmplwi r3, 0 /* 800453B8 00042318 41 82 00 0C */ beq lbl_800453C4 /* 800453BC 0004231C 7F E4 FB 78 */ mr r4, r31 /* 800453C0 00042320 48 16 5F 09 */ bl TouchModels__18CScriptPlayerActorFRC13CStateManager lbl_800453C4: /* 800453C4 00042324 80 01 00 24 */ lwz r0, 0x24(r1) /* 800453C8 00042328 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800453CC 0004232C 7C 08 03 A6 */ mtlr r0 /* 800453D0 00042330 38 21 00 20 */ addi r1, r1, 0x20 /* 800453D4 00042334 4E 80 00 20 */ blr .global TouchSky__13CStateManagerCFv TouchSky__13CStateManagerCFv: /* 800453D8 00042338 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800453DC 0004233C 7C 08 02 A6 */ mflr r0 /* 800453E0 00042340 90 01 00 14 */ stw r0, 0x14(r1) /* 800453E4 00042344 80 63 08 50 */ lwz r3, 0x850(r3) /* 800453E8 00042348 48 01 15 11 */ bl TouchSky__6CWorldCFv /* 800453EC 0004234C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800453F0 00042350 7C 08 03 A6 */ mtlr r0 /* 800453F4 00042354 38 21 00 10 */ addi r1, r1, 0x10 /* 800453F8 00042358 4E 80 00 20 */ blr .global DrawSpaceWarp__13CStateManagerCFRC9CVector3ff DrawSpaceWarp__13CStateManagerCFRC9CVector3ff: /* 800453FC 0004235C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80045400 00042360 7C 08 02 A6 */ mflr r0 /* 80045404 00042364 90 01 00 34 */ stw r0, 0x34(r1) /* 80045408 00042368 DB E1 00 28 */ stfd f31, 0x28(r1) /* 8004540C 0004236C FF E0 08 90 */ fmr f31, f1 /* 80045410 00042370 93 E1 00 24 */ stw r31, 0x24(r1) /* 80045414 00042374 7C 9F 23 78 */ mr r31, r4 /* 80045418 00042378 93 C1 00 20 */ stw r30, 0x20(r1) /* 8004541C 0004237C 7C 7E 1B 78 */ mr r30, r3 /* 80045420 00042380 7F C4 F3 78 */ mr r4, r30 /* 80045424 00042384 80 63 08 B8 */ lwz r3, 0x8b8(r3) /* 80045428 00042388 80 63 00 00 */ lwz r3, 0(r3) /* 8004542C 0004238C 48 04 C1 2D */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80045430 00042390 2C 03 00 02 */ cmpwi r3, 2 /* 80045434 00042394 41 82 00 20 */ beq lbl_80045454 /* 80045438 00042398 40 80 00 10 */ bge lbl_80045448 /* 8004543C 0004239C 2C 03 00 01 */ cmpwi r3, 1 /* 80045440 000423A0 40 80 00 4C */ bge lbl_8004548C /* 80045444 000423A4 48 00 00 10 */ b lbl_80045454 lbl_80045448: /* 80045448 000423A8 2C 03 00 04 */ cmpwi r3, 4 /* 8004544C 000423AC 40 80 00 08 */ bge lbl_80045454 /* 80045450 000423B0 48 00 00 3C */ b lbl_8004548C lbl_80045454: /* 80045454 000423B4 80 7E 08 70 */ lwz r3, 0x870(r30) /* 80045458 000423B8 7F C4 F3 78 */ mr r4, r30 /* 8004545C 000423BC 4B FC 66 BD */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 80045460 000423C0 7C 64 1B 78 */ mr r4, r3 /* 80045464 000423C4 7F E5 FB 78 */ mr r5, r31 /* 80045468 000423C8 38 61 00 08 */ addi r3, r1, 8 /* 8004546C 000423CC 48 01 84 25 */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f /* 80045470 000423D0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80045474 000423D4 FC 20 F8 90 */ fmr f1, f31 /* 80045478 000423D8 38 81 00 08 */ addi r4, r1, 8 /* 8004547C 000423DC 81 83 00 00 */ lwz r12, 0(r3) /* 80045480 000423E0 81 8C 00 CC */ lwz r12, 0xcc(r12) /* 80045484 000423E4 7D 89 03 A6 */ mtctr r12 /* 80045488 000423E8 4E 80 04 21 */ bctrl lbl_8004548C: /* 8004548C 000423EC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80045490 000423F0 CB E1 00 28 */ lfd f31, 0x28(r1) /* 80045494 000423F4 83 E1 00 24 */ lwz r31, 0x24(r1) /* 80045498 000423F8 83 C1 00 20 */ lwz r30, 0x20(r1) /* 8004549C 000423FC 7C 08 03 A6 */ mtlr r0 /* 800454A0 00042400 38 21 00 30 */ addi r1, r1, 0x30 /* 800454A4 00042404 4E 80 00 20 */ blr .global DrawReflection__13CStateManagerFRC9CVector3f DrawReflection__13CStateManagerFRC9CVector3f: /* 800454A8 00042408 94 21 FE B0 */ stwu r1, -0x150(r1) /* 800454AC 0004240C 7C 08 02 A6 */ mflr r0 /* 800454B0 00042410 90 01 01 54 */ stw r0, 0x154(r1) /* 800454B4 00042414 93 E1 01 4C */ stw r31, 0x14c(r1) /* 800454B8 00042418 7C 9F 23 78 */ mr r31, r4 /* 800454BC 0004241C 93 C1 01 48 */ stw r30, 0x148(r1) /* 800454C0 00042420 93 A1 01 44 */ stw r29, 0x144(r1) /* 800454C4 00042424 7C 7D 1B 78 */ mr r29, r3 /* 800454C8 00042428 83 C3 08 4C */ lwz r30, 0x84c(r3) /* 800454CC 0004242C 38 61 00 50 */ addi r3, r1, 0x50 /* 800454D0 00042430 7F C4 F3 78 */ mr r4, r30 /* 800454D4 00042434 48 0D 54 59 */ bl GetBoundingBox__13CPhysicsActorCFv /* 800454D8 00042438 C0 A1 00 50 */ lfs f5, 0x50(r1) /* 800454DC 0004243C 38 61 00 2C */ addi r3, r1, 0x2c /* 800454E0 00042440 C0 81 00 54 */ lfs f4, 0x54(r1) /* 800454E4 00042444 38 81 00 84 */ addi r4, r1, 0x84 /* 800454E8 00042448 C0 61 00 58 */ lfs f3, 0x58(r1) /* 800454EC 0004244C C0 41 00 5C */ lfs f2, 0x5c(r1) /* 800454F0 00042450 C0 21 00 60 */ lfs f1, 0x60(r1) /* 800454F4 00042454 C0 01 00 64 */ lfs f0, 0x64(r1) /* 800454F8 00042458 D0 A1 00 84 */ stfs f5, 0x84(r1) /* 800454FC 0004245C D0 81 00 88 */ stfs f4, 0x88(r1) /* 80045500 00042460 D0 61 00 8C */ stfs f3, 0x8c(r1) /* 80045504 00042464 D0 41 00 90 */ stfs f2, 0x90(r1) /* 80045508 00042468 D0 21 00 94 */ stfs f1, 0x94(r1) /* 8004550C 0004246C D0 01 00 98 */ stfs f0, 0x98(r1) /* 80045510 00042470 48 2F 20 FD */ bl GetCenterPoint__6CAABoxCFv /* 80045514 00042474 C0 61 00 34 */ lfs f3, 0x34(r1) /* 80045518 00042478 38 61 00 20 */ addi r3, r1, 0x20 /* 8004551C 0004247C C0 A1 00 2C */ lfs f5, 0x2c(r1) /* 80045520 00042480 38 81 00 14 */ addi r4, r1, 0x14 /* 80045524 00042484 C0 81 00 30 */ lfs f4, 0x30(r1) /* 80045528 00042488 EC 03 18 28 */ fsubs f0, f3, f3 /* 8004552C 0004248C C0 5F 00 04 */ lfs f2, 4(r31) /* 80045530 00042490 C0 3F 00 00 */ lfs f1, 0(r31) /* 80045534 00042494 EC 44 10 28 */ fsubs f2, f4, f2 /* 80045538 00042498 D0 A1 00 44 */ stfs f5, 0x44(r1) /* 8004553C 0004249C EC 25 08 28 */ fsubs f1, f5, f1 /* 80045540 000424A0 D0 81 00 48 */ stfs f4, 0x48(r1) /* 80045544 000424A4 D0 61 00 4C */ stfs f3, 0x4c(r1) /* 80045548 000424A8 D0 21 00 14 */ stfs f1, 0x14(r1) /* 8004554C 000424AC D0 41 00 18 */ stfs f2, 0x18(r1) /* 80045550 000424B0 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80045554 000424B4 48 2C F2 FD */ bl AsNormalized__9CVector3fCFv /* 80045558 000424B8 C0 62 85 9C */ lfs f3, lbl_805AA2BC@sda21(r2) /* 8004555C 000424BC 38 61 00 9C */ addi r3, r1, 0x9c /* 80045560 000424C0 C0 41 00 24 */ lfs f2, 0x24(r1) /* 80045564 000424C4 38 81 00 38 */ addi r4, r1, 0x38 /* 80045568 000424C8 C0 21 00 28 */ lfs f1, 0x28(r1) /* 8004556C 000424CC 38 A1 00 44 */ addi r5, r1, 0x44 /* 80045570 000424D0 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80045574 000424D4 EC C3 00 B2 */ fmuls f6, f3, f2 /* 80045578 000424D8 C0 E1 00 48 */ lfs f7, 0x48(r1) /* 8004557C 000424DC EC 83 00 72 */ fmuls f4, f3, f1 /* 80045580 000424E0 C0 A1 00 4C */ lfs f5, 0x4c(r1) /* 80045584 000424E4 EC 43 00 32 */ fmuls f2, f3, f0 /* 80045588 000424E8 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 8004558C 000424EC C0 61 00 44 */ lfs f3, 0x44(r1) /* 80045590 000424F0 EC C7 30 28 */ fsubs f6, f7, f6 /* 80045594 000424F4 EC 85 20 28 */ fsubs f4, f5, f4 /* 80045598 000424F8 C0 02 85 A0 */ lfs f0, lbl_805AA2C0@sda21(r2) /* 8004559C 000424FC EC 43 10 28 */ fsubs f2, f3, f2 /* 800455A0 00042500 D0 21 00 08 */ stfs f1, 8(r1) /* 800455A4 00042504 38 C1 00 08 */ addi r6, r1, 8 /* 800455A8 00042508 D0 C1 00 3C */ stfs f6, 0x3c(r1) /* 800455AC 0004250C D0 41 00 38 */ stfs f2, 0x38(r1) /* 800455B0 00042510 D0 81 00 40 */ stfs f4, 0x40(r1) /* 800455B4 00042514 D0 21 00 0C */ stfs f1, 0xc(r1) /* 800455B8 00042518 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800455BC 0004251C 48 2C E5 55 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 800455C0 00042520 38 61 00 FC */ addi r3, r1, 0xfc /* 800455C4 00042524 38 81 00 9C */ addi r4, r1, 0x9c /* 800455C8 00042528 48 2C D5 AD */ bl __ct__12CTransform4fFRC12CTransform4f /* 800455CC 0004252C 3C 80 80 5A */ lis r4, lbl_805A61D4@ha /* 800455D0 00042530 38 61 00 CC */ addi r3, r1, 0xcc /* 800455D4 00042534 38 84 61 D4 */ addi r4, r4, lbl_805A61D4@l /* 800455D8 00042538 48 2C D5 9D */ bl __ct__12CTransform4fFRC12CTransform4f /* 800455DC 0004253C 38 61 00 FC */ addi r3, r1, 0xfc /* 800455E0 00042540 48 2C 71 6D */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f /* 800455E4 00042544 80 7D 08 70 */ lwz r3, 0x870(r29) /* 800455E8 00042548 7F A4 EB 78 */ mr r4, r29 /* 800455EC 0004254C 4B FC 65 2D */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 800455F0 00042550 7C 7F 1B 78 */ mr r31, r3 /* 800455F4 00042554 48 2C 48 69 */ bl GetProjectionState__9CGraphicsFv /* 800455F8 00042558 88 03 00 00 */ lbz r0, 0(r3) /* 800455FC 0004255C 3C 80 43 30 */ lis r4, 0x4330 /* 80045600 00042560 3C A0 80 3F */ lis r5, lbl_803ED910@ha /* 80045604 00042564 90 81 01 30 */ stw r4, 0x130(r1) /* 80045608 00042568 38 C5 D9 10 */ addi r6, r5, lbl_803ED910@l /* 8004560C 0004256C C8 22 85 A8 */ lfd f1, lbl_805AA2C8@sda21(r2) /* 80045610 00042570 98 01 00 68 */ stb r0, 0x68(r1) /* 80045614 00042574 80 A6 00 08 */ lwz r5, 8(r6) /* 80045618 00042578 C0 03 00 04 */ lfs f0, 4(r3) /* 8004561C 0004257C 80 06 00 0C */ lwz r0, 0xc(r6) /* 80045620 00042580 6C A5 80 00 */ xoris r5, r5, 0x8000 .global lbl_80045624 lbl_80045624: /* 80045624 00042584 D0 01 00 6C */ stfs f0, 0x6c(r1) /* 80045628 00042588 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8004562C 0004258C C0 03 00 08 */ lfs f0, 8(r3) /* 80045630 00042590 90 A1 01 34 */ stw r5, 0x134(r1) /* 80045634 00042594 D0 01 00 70 */ stfs f0, 0x70(r1) /* 80045638 00042598 C8 01 01 30 */ lfd f0, 0x130(r1) /* 8004563C 0004259C C0 63 00 0C */ lfs f3, 0xc(r3) /* 80045640 000425A0 90 01 01 3C */ stw r0, 0x13c(r1) /* 80045644 000425A4 EC 40 08 28 */ fsubs f2, f0, f1 /* 80045648 000425A8 D0 61 00 74 */ stfs f3, 0x74(r1) /* 8004564C 000425AC C0 03 00 10 */ lfs f0, 0x10(r3) /* 80045650 000425B0 90 81 01 38 */ stw r4, 0x138(r1) /* 80045654 000425B4 D0 01 00 78 */ stfs f0, 0x78(r1) /* 80045658 000425B8 C8 01 01 38 */ lfd f0, 0x138(r1) /* 8004565C 000425BC C0 83 00 14 */ lfs f4, 0x14(r3) /* 80045660 000425C0 EC 60 08 28 */ fsubs f3, f0, f1 /* 80045664 000425C4 D0 81 00 7C */ stfs f4, 0x7c(r1) /* 80045668 000425C8 C0 03 00 18 */ lfs f0, 0x18(r3) /* 8004566C 000425CC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80045670 000425D0 D0 01 00 80 */ stfs f0, 0x80(r1) /* 80045674 000425D4 81 83 00 00 */ lwz r12, 0(r3) /* 80045678 000425D8 C0 3F 01 5C */ lfs f1, 0x15c(r31) /* 8004567C 000425DC 81 8C 00 4C */ lwz r12, 0x4c(r12) /* 80045680 000425E0 C0 9F 01 60 */ lfs f4, 0x160(r31) /* 80045684 000425E4 C0 BF 01 64 */ lfs f5, 0x164(r31) /* 80045688 000425E8 7D 89 03 A6 */ mtctr r12 /* 8004568C 000425EC 4E 80 04 21 */ bctrl /* 80045690 000425F0 7F C3 F3 78 */ mr r3, r30 /* 80045694 000425F4 7F A4 EB 78 */ mr r4, r29 /* 80045698 000425F8 4B FC EA DD */ bl RenderReflectedPlayer__7CPlayerFR13CStateManager /* 8004569C 000425FC 38 61 00 CC */ addi r3, r1, 0xcc /* 800456A0 00042600 48 2C 70 AD */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f /* 800456A4 00042604 38 61 00 68 */ addi r3, r1, 0x68 /* 800456A8 00042608 48 2C 47 59 */ bl SetProjectionState__9CGraphicsFRCQ29CGraphics16CProjectionState /* 800456AC 0004260C 80 01 01 54 */ lwz r0, 0x154(r1) /* 800456B0 00042610 83 E1 01 4C */ lwz r31, 0x14c(r1) /* 800456B4 00042614 83 C1 01 48 */ lwz r30, 0x148(r1) /* 800456B8 00042618 83 A1 01 44 */ lwz r29, 0x144(r1) /* 800456BC 0004261C 7C 08 03 A6 */ mtlr r0 /* 800456C0 00042620 38 21 01 50 */ addi r1, r1, 0x150 /* 800456C4 00042624 4E 80 00 20 */ blr .global CacheReflection__13CStateManagerFv CacheReflection__13CStateManagerFv: /* 800456C8 00042628 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800456CC 0004262C 7C 08 02 A6 */ mflr r0 /* 800456D0 00042630 3C 80 80 04 */ lis r4, ReflectionDrawer__13CStateManagerFPvRC9CVector3f@ha /* 800456D4 00042634 7C 65 1B 78 */ mr r5, r3 /* 800456D8 00042638 90 01 00 14 */ stw r0, 0x14(r1) /* 800456DC 0004263C 38 84 57 10 */ addi r4, r4, ReflectionDrawer__13CStateManagerFPvRC9CVector3f@l /* 800456E0 00042640 88 02 80 E8 */ lbz r0, lbl_805A9E08@sda21(r2) /* 800456E4 00042644 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800456E8 00042648 7C 00 00 34 */ cntlzw r0, r0 /* 800456EC 0004264C 81 83 00 00 */ lwz r12, 0(r3) /* 800456F0 00042650 54 06 D9 7E */ srwi r6, r0, 5 /* 800456F4 00042654 81 8C 00 C8 */ lwz r12, 0xc8(r12) /* 800456F8 00042658 7D 89 03 A6 */ mtctr r12 /* 800456FC 0004265C 4E 80 04 21 */ bctrl /* 80045700 00042660 80 01 00 14 */ lwz r0, 0x14(r1) /* 80045704 00042664 7C 08 03 A6 */ mtlr r0 /* 80045708 00042668 38 21 00 10 */ addi r1, r1, 0x10 /* 8004570C 0004266C 4E 80 00 20 */ blr .global ReflectionDrawer__13CStateManagerFPvRC9CVector3f ReflectionDrawer__13CStateManagerFPvRC9CVector3f: /* 80045710 00042670 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80045714 00042674 7C 08 02 A6 */ mflr r0 /* 80045718 00042678 90 01 00 14 */ stw r0, 0x14(r1) /* 8004571C 0004267C 4B FF FD 8D */ bl DrawReflection__13CStateManagerFRC9CVector3f /* 80045720 00042680 80 01 00 14 */ lwz r0, 0x14(r1) /* 80045724 00042684 7C 08 03 A6 */ mtlr r0 /* 80045728 00042688 38 21 00 10 */ addi r1, r1, 0x10 /* 8004572C 0004268C 4E 80 00 20 */ blr .global CanCreateProjectile__13CStateManagerCF9TUniqueId11EWeaponTypei CanCreateProjectile__13CStateManagerCF9TUniqueId11EWeaponTypei: /* 80045730 00042690 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045734 00042694 7C 08 02 A6 */ mflr r0 /* 80045738 00042698 90 01 00 24 */ stw r0, 0x24(r1) /* 8004573C 0004269C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045740 000426A0 7C DF 33 78 */ mr r31, r6 /* 80045744 000426A4 A0 04 00 00 */ lhz r0, 0(r4) /* 80045748 000426A8 38 81 00 08 */ addi r4, r1, 8 /* 8004574C 000426AC 80 63 08 78 */ lwz r3, 0x878(r3) /* 80045750 000426B0 B0 01 00 08 */ sth r0, 8(r1) /* 80045754 000426B4 48 07 C5 D5 */ bl GetNumActive__10CWeaponMgrCF9TUniqueId11EWeaponType /* 80045758 000426B8 7F E0 1A 78 */ xor r0, r31, r3 /* 8004575C 000426BC 7C 03 0E 70 */ srawi r3, r0, 1 /* 80045760 000426C0 7C 00 F8 38 */ and r0, r0, r31 /* 80045764 000426C4 7C 00 18 50 */ subf r0, r0, r3 /* 80045768 000426C8 54 03 0F FE */ srwi r3, r0, 0x1f /* 8004576C 000426CC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045770 000426D0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80045774 000426D4 7C 08 03 A6 */ mtlr r0 /* 80045778 000426D8 38 21 00 20 */ addi r1, r1, 0x20 /* 8004577C 000426DC 4E 80 00 20 */ blr .global BuildDynamicLightListForWorld__13CStateManagerFv BuildDynamicLightListForWorld__13CStateManagerFv: /* 80045780 000426E0 94 21 FF 30 */ stwu r1, -0xd0(r1) /* 80045784 000426E4 7C 08 02 A6 */ mflr r0 /* 80045788 000426E8 90 01 00 D4 */ stw r0, 0xd4(r1) /* 8004578C 000426EC 93 E1 00 CC */ stw r31, 0xcc(r1) /* 80045790 000426F0 93 C1 00 C8 */ stw r30, 0xc8(r1) /* 80045794 000426F4 7C 7E 1B 78 */ mr r30, r3 /* 80045798 000426F8 7F C4 F3 78 */ mr r4, r30 /* 8004579C 000426FC 93 A1 00 C4 */ stw r29, 0xc4(r1) /* 800457A0 00042700 93 81 00 C0 */ stw r28, 0xc0(r1) /* 800457A4 00042704 80 63 08 B8 */ lwz r3, 0x8b8(r3) /* 800457A8 00042708 80 63 00 00 */ lwz r3, 0(r3) /* 800457AC 0004270C 48 04 BD AD */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 800457B0 00042710 2C 03 00 03 */ cmpwi r3, 3 /* 800457B4 00042714 40 82 00 64 */ bne lbl_80045818 /* 800457B8 00042718 38 00 00 00 */ li r0, 0 /* 800457BC 0004271C 38 7E 08 E0 */ addi r3, r30, 0x8e0 /* 800457C0 00042720 90 01 00 60 */ stw r0, 0x60(r1) /* 800457C4 00042724 38 81 00 5C */ addi r4, r1, 0x5c /* 800457C8 00042728 90 01 00 64 */ stw r0, 0x64(r1) /* 800457CC 0004272C 90 01 00 68 */ stw r0, 0x68(r1) /* 800457D0 00042730 48 00 02 99 */ bl sub_80045a68 /* 800457D4 00042734 80 01 00 60 */ lwz r0, 0x60(r1) /* 800457D8 00042738 80 61 00 68 */ lwz r3, 0x68(r1) /* 800457DC 0004273C 1C 00 00 50 */ mulli r0, r0, 0x50 /* 800457E0 00042740 90 61 00 30 */ stw r3, 0x30(r1) /* 800457E4 00042744 7C 64 1B 78 */ mr r4, r3 /* 800457E8 00042748 7C 03 02 14 */ add r0, r3, r0 /* 800457EC 0004274C 90 61 00 2C */ stw r3, 0x2c(r1) /* 800457F0 00042750 90 01 00 38 */ stw r0, 0x38(r1) /* 800457F4 00042754 90 01 00 34 */ stw r0, 0x34(r1) /* 800457F8 00042758 48 00 00 08 */ b lbl_80045800 lbl_800457FC: /* 800457FC 0004275C 38 84 00 50 */ addi r4, r4, 0x50 lbl_80045800: /* 80045800 00042760 7C 04 00 40 */ cmplw r4, r0 /* 80045804 00042764 40 82 FF F8 */ bne lbl_800457FC /* 80045808 00042768 28 03 00 00 */ cmplwi r3, 0 /* 8004580C 0004276C 41 82 01 98 */ beq lbl_800459A4 /* 80045810 00042770 48 2D 01 21 */ bl Free__7CMemoryFPCv /* 80045814 00042774 48 00 01 90 */ b lbl_800459A4 lbl_80045818: /* 80045818 00042778 83 FE 08 30 */ lwz r31, 0x830(r30) /* 8004581C 0004277C AB BF 20 0A */ lha r29, 0x200a(r31) /* 80045820 00042780 2C 1D 00 00 */ cmpwi r29, 0 /* 80045824 00042784 41 82 01 80 */ beq lbl_800459A4 /* 80045828 00042788 80 1E 08 E8 */ lwz r0, 0x8e8(r30) /* 8004582C 0004278C 7C 1D 00 00 */ cmpw r29, r0 /* 80045830 00042790 41 82 00 70 */ beq lbl_800458A0 /* 80045834 00042794 38 00 00 00 */ li r0, 0 /* 80045838 00042798 38 7E 08 E0 */ addi r3, r30, 0x8e0 /* 8004583C 0004279C 90 01 00 50 */ stw r0, 0x50(r1) /* 80045840 000427A0 38 81 00 4C */ addi r4, r1, 0x4c /* 80045844 000427A4 90 01 00 54 */ stw r0, 0x54(r1) /* 80045848 000427A8 90 01 00 58 */ stw r0, 0x58(r1) /* 8004584C 000427AC 48 00 02 1D */ bl sub_80045a68 /* 80045850 000427B0 80 01 00 50 */ lwz r0, 0x50(r1) /* 80045854 000427B4 80 61 00 58 */ lwz r3, 0x58(r1) /* 80045858 000427B8 1C 00 00 50 */ mulli r0, r0, 0x50 /* 8004585C 000427BC 90 61 00 20 */ stw r3, 0x20(r1) /* 80045860 000427C0 7C 64 1B 78 */ mr r4, r3 /* 80045864 000427C4 7C 03 02 14 */ add r0, r3, r0 /* 80045868 000427C8 90 61 00 1C */ stw r3, 0x1c(r1) /* 8004586C 000427CC 90 01 00 28 */ stw r0, 0x28(r1) /* 80045870 000427D0 90 01 00 24 */ stw r0, 0x24(r1) /* 80045874 000427D4 48 00 00 08 */ b lbl_8004587C lbl_80045878: /* 80045878 000427D8 38 84 00 50 */ addi r4, r4, 0x50 lbl_8004587C: /* 8004587C 000427DC 7C 04 00 40 */ cmplw r4, r0 /* 80045880 000427E0 40 82 FF F8 */ bne lbl_80045878 /* 80045884 000427E4 28 03 00 00 */ cmplwi r3, 0 /* 80045888 000427E8 41 82 00 08 */ beq lbl_80045890 /* 8004588C 000427EC 48 2D 00 A5 */ bl Free__7CMemoryFPCv lbl_80045890: /* 80045890 000427F0 7F A4 EB 78 */ mr r4, r29 /* 80045894 000427F4 38 7E 08 E0 */ addi r3, r30, 0x8e0 /* 80045898 000427F8 48 00 A9 6D */ bl sub_80050204 /* 8004589C 000427FC 48 00 00 3C */ b lbl_800458D8 lbl_800458A0: /* 800458A0 00042800 80 1E 08 E4 */ lwz r0, 0x8e4(r30) /* 800458A4 00042804 80 7E 08 EC */ lwz r3, 0x8ec(r30) /* 800458A8 00042808 1C 00 00 50 */ mulli r0, r0, 0x50 /* 800458AC 0004280C 90 61 00 10 */ stw r3, 0x10(r1) /* 800458B0 00042810 7C 03 02 14 */ add r0, r3, r0 /* 800458B4 00042814 90 61 00 0C */ stw r3, 0xc(r1) /* 800458B8 00042818 90 01 00 18 */ stw r0, 0x18(r1) /* 800458BC 0004281C 90 01 00 14 */ stw r0, 0x14(r1) /* 800458C0 00042820 48 00 00 08 */ b lbl_800458C8 lbl_800458C4: /* 800458C4 00042824 38 63 00 50 */ addi r3, r3, 0x50 lbl_800458C8: /* 800458C8 00042828 7C 03 00 40 */ cmplw r3, r0 /* 800458CC 0004282C 40 82 FF F8 */ bne lbl_800458C4 /* 800458D0 00042830 38 00 00 00 */ li r0, 0 /* 800458D4 00042834 90 1E 08 E4 */ stw r0, 0x8e4(r30) lbl_800458D8: /* 800458D8 00042838 AB BF 20 08 */ lha r29, 0x2008(r31) /* 800458DC 0004283C 48 00 00 84 */ b lbl_80045960 lbl_800458E0: /* 800458E0 00042840 7F E3 FB 78 */ mr r3, r31 /* 800458E4 00042844 7F A4 EB 78 */ mr r4, r29 /* 800458E8 00042848 4B FC A3 F5 */ bl __vc__11CObjectListCFi /* 800458EC 0004284C 28 03 00 00 */ cmplwi r3, 0 /* 800458F0 00042850 41 82 00 54 */ beq lbl_80045944 /* 800458F4 00042854 88 03 00 30 */ lbz r0, 0x30(r3) /* 800458F8 00042858 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800458FC 0004285C 41 82 00 48 */ beq lbl_80045944 /* 80045900 00042860 7C 64 1B 78 */ mr r4, r3 /* 80045904 00042864 38 61 00 6C */ addi r3, r1, 0x6c /* 80045908 00042868 48 06 FD A1 */ bl GetLight__10CGameLightCFv /* 8004590C 0004286C 3B 81 00 6C */ addi r28, r1, 0x6c /* 80045910 00042870 7F 83 E3 78 */ mr r3, r28 /* 80045914 00042874 48 2C 08 41 */ bl GetIntensity__6CLightCFv /* 80045918 00042878 C0 02 85 88 */ lfs f0, lbl_805AA2A8@sda21(r2) /* 8004591C 0004287C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80045920 00042880 40 81 00 24 */ ble lbl_80045944 /* 80045924 00042884 7F 83 E3 78 */ mr r3, r28 /* 80045928 00042888 48 2C 09 AD */ bl GetRadius__6CLightCFv /* 8004592C 0004288C C0 02 85 88 */ lfs f0, lbl_805AA2A8@sda21(r2) /* 80045930 00042890 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80045934 00042894 40 81 00 10 */ ble lbl_80045944 /* 80045938 00042898 7F 84 E3 78 */ mr r4, r28 /* 8004593C 0004289C 38 7E 08 E0 */ addi r3, r30, 0x8e0 /* 80045940 000428A0 48 00 00 85 */ bl sub_800459c4 lbl_80045944: /* 80045944 000428A4 2C 1D FF FF */ cmpwi r29, -1 /* 80045948 000428A8 41 82 00 14 */ beq lbl_8004595C /* 8004594C 000428AC 57 A3 18 38 */ slwi r3, r29, 3 /* 80045950 000428B0 38 03 00 08 */ addi r0, r3, 8 /* 80045954 000428B4 7F BF 02 AE */ lhax r29, r31, r0 /* 80045958 000428B8 48 00 00 08 */ b lbl_80045960 lbl_8004595C: /* 8004595C 000428BC 3B A0 FF FF */ li r29, -1 lbl_80045960: /* 80045960 000428C0 2C 1D FF FF */ cmpwi r29, -1 /* 80045964 000428C4 40 82 FF 7C */ bne lbl_800458E0 /* 80045968 000428C8 88 0D A2 04 */ lbz r0, lbl_805A8DC4@sda21(r13) /* 8004596C 000428CC 38 61 00 48 */ addi r3, r1, 0x48 /* 80045970 000428D0 38 81 00 40 */ addi r4, r1, 0x40 /* 80045974 000428D4 38 A1 00 08 */ addi r5, r1, 8 /* 80045978 000428D8 98 01 00 08 */ stb r0, 8(r1) /* 8004597C 000428DC 80 1E 08 E4 */ lwz r0, 0x8e4(r30) /* 80045980 000428E0 80 DE 08 EC */ lwz r6, 0x8ec(r30) /* 80045984 000428E4 1C 00 00 50 */ mulli r0, r0, 0x50 /* 80045988 000428E8 7C C6 02 14 */ add r6, r6, r0 /* 8004598C 000428EC 90 C1 00 40 */ stw r6, 0x40(r1) /* 80045990 000428F0 80 1E 08 EC */ lwz r0, 0x8ec(r30) /* 80045994 000428F4 90 C1 00 3C */ stw r6, 0x3c(r1) /* 80045998 000428F8 90 01 00 44 */ stw r0, 0x44(r1) /* 8004599C 000428FC 90 01 00 48 */ stw r0, 0x48(r1) /* 800459A0 00042900 48 00 9F 39 */ bl sub_8004f8d8 lbl_800459A4: /* 800459A4 00042904 80 01 00 D4 */ lwz r0, 0xd4(r1) /* 800459A8 00042908 83 E1 00 CC */ lwz r31, 0xcc(r1) /* 800459AC 0004290C 83 C1 00 C8 */ lwz r30, 0xc8(r1) /* 800459B0 00042910 83 A1 00 C4 */ lwz r29, 0xc4(r1) /* 800459B4 00042914 83 81 00 C0 */ lwz r28, 0xc0(r1) /* 800459B8 00042918 7C 08 03 A6 */ mtlr r0 /* 800459BC 0004291C 38 21 00 D0 */ addi r1, r1, 0xd0 /* 800459C0 00042920 4E 80 00 20 */ blr .global sub_800459c4 sub_800459c4: /* 800459C4 00042924 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800459C8 00042928 7C 08 02 A6 */ mflr r0 /* 800459CC 0004292C 90 01 00 14 */ stw r0, 0x14(r1) /* 800459D0 00042930 93 E1 00 0C */ stw r31, 0xc(r1) /* 800459D4 00042934 7C 9F 23 78 */ mr r31, r4 /* 800459D8 00042938 93 C1 00 08 */ stw r30, 8(r1) /* 800459DC 0004293C 7C 7E 1B 78 */ mr r30, r3 /* 800459E0 00042940 80 03 00 04 */ lwz r0, 4(r3) /* 800459E4 00042944 80 A3 00 08 */ lwz r5, 8(r3) /* 800459E8 00042948 7C 00 28 00 */ cmpw r0, r5 /* 800459EC 0004294C 41 80 00 18 */ blt lbl_80045A04 /* 800459F0 00042950 2C 05 00 00 */ cmpwi r5, 0 /* 800459F4 00042954 38 80 00 04 */ li r4, 4 /* 800459F8 00042958 41 82 00 08 */ beq lbl_80045A00 /* 800459FC 0004295C 54 A4 08 3C */ slwi r4, r5, 1 lbl_80045A00: /* 80045A00 00042960 48 00 A8 05 */ bl sub_80050204 lbl_80045A04: /* 80045A04 00042964 80 1E 00 04 */ lwz r0, 4(r30) /* 80045A08 00042968 7F E4 FB 78 */ mr r4, r31 /* 80045A0C 0004296C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80045A10 00042970 1C 00 00 50 */ mulli r0, r0, 0x50 /* 80045A14 00042974 7C 63 02 14 */ add r3, r3, r0 /* 80045A18 00042978 48 00 00 29 */ bl sub_80045a40 /* 80045A1C 0004297C 80 7E 00 04 */ lwz r3, 4(r30) /* 80045A20 00042980 38 03 00 01 */ addi r0, r3, 1 /* 80045A24 00042984 90 1E 00 04 */ stw r0, 4(r30) /* 80045A28 00042988 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80045A2C 0004298C 83 C1 00 08 */ lwz r30, 8(r1) /* 80045A30 00042990 80 01 00 14 */ lwz r0, 0x14(r1) /* 80045A34 00042994 7C 08 03 A6 */ mtlr r0 /* 80045A38 00042998 38 21 00 10 */ addi r1, r1, 0x10 /* 80045A3C 0004299C 4E 80 00 20 */ blr .global sub_80045a40 sub_80045a40: /* 80045A40 000429A0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80045A44 000429A4 7C 08 02 A6 */ mflr r0 /* 80045A48 000429A8 28 03 00 00 */ cmplwi r3, 0 /* 80045A4C 000429AC 90 01 00 14 */ stw r0, 0x14(r1) /* 80045A50 000429B0 41 82 00 08 */ beq lbl_80045A58 /* 80045A54 000429B4 4B FF 5B 1D */ bl __ct__6CLightFCR6CLight lbl_80045A58: /* 80045A58 000429B8 80 01 00 14 */ lwz r0, 0x14(r1) /* 80045A5C 000429BC 7C 08 03 A6 */ mtlr r0 /* 80045A60 000429C0 38 21 00 10 */ addi r1, r1, 0x10 /* 80045A64 000429C4 4E 80 00 20 */ blr .global sub_80045a68 sub_80045a68: /* 80045A68 000429C8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045A6C 000429CC 7C 08 02 A6 */ mflr r0 /* 80045A70 000429D0 90 01 00 24 */ stw r0, 0x24(r1) /* 80045A74 000429D4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045A78 000429D8 7C 9F 23 78 */ mr r31, r4 /* 80045A7C 000429DC 93 C1 00 18 */ stw r30, 0x18(r1) /* 80045A80 000429E0 7C 7E 1B 78 */ mr r30, r3 /* 80045A84 000429E4 7C 1E F8 40 */ cmplw r30, r31 /* 80045A88 000429E8 40 82 00 08 */ bne lbl_80045A90 /* 80045A8C 000429EC 48 00 00 98 */ b lbl_80045B24 lbl_80045A90: /* 80045A90 000429F0 80 1E 00 04 */ lwz r0, 4(r30) /* 80045A94 000429F4 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80045A98 000429F8 1C 00 00 50 */ mulli r0, r0, 0x50 /* 80045A9C 000429FC 90 61 00 0C */ stw r3, 0xc(r1) /* 80045AA0 00042A00 7C 03 02 14 */ add r0, r3, r0 /* 80045AA4 00042A04 90 61 00 08 */ stw r3, 8(r1) /* 80045AA8 00042A08 90 01 00 14 */ stw r0, 0x14(r1) /* 80045AAC 00042A0C 90 01 00 10 */ stw r0, 0x10(r1) /* 80045AB0 00042A10 48 00 00 08 */ b lbl_80045AB8 lbl_80045AB4: /* 80045AB4 00042A14 38 63 00 50 */ addi r3, r3, 0x50 lbl_80045AB8: /* 80045AB8 00042A18 7C 03 00 40 */ cmplw r3, r0 /* 80045ABC 00042A1C 40 82 FF F8 */ bne lbl_80045AB4 /* 80045AC0 00042A20 38 00 00 00 */ li r0, 0 /* 80045AC4 00042A24 90 1E 00 04 */ stw r0, 4(r30) /* 80045AC8 00042A28 80 9F 00 04 */ lwz r4, 4(r31) /* 80045ACC 00042A2C 2C 04 00 00 */ cmpwi r4, 0 /* 80045AD0 00042A30 40 82 00 28 */ bne lbl_80045AF8 /* 80045AD4 00042A34 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80045AD8 00042A38 28 03 00 00 */ cmplwi r3, 0 /* 80045ADC 00042A3C 41 82 00 08 */ beq lbl_80045AE4 /* 80045AE0 00042A40 48 2C FE 51 */ bl Free__7CMemoryFPCv lbl_80045AE4: /* 80045AE4 00042A44 38 00 00 00 */ li r0, 0 /* 80045AE8 00042A48 90 1E 00 04 */ stw r0, 4(r30) /* 80045AEC 00042A4C 90 1E 00 08 */ stw r0, 8(r30) /* 80045AF0 00042A50 90 1E 00 0C */ stw r0, 0xc(r30) /* 80045AF4 00042A54 48 00 00 2C */ b lbl_80045B20 lbl_80045AF8: /* 80045AF8 00042A58 7F C3 F3 78 */ mr r3, r30 /* 80045AFC 00042A5C 48 00 A7 09 */ bl sub_80050204 /* 80045B00 00042A60 80 1F 00 04 */ lwz r0, 4(r31) /* 80045B04 00042A64 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80045B08 00042A68 1C 00 00 50 */ mulli r0, r0, 0x50 /* 80045B0C 00042A6C 80 BE 00 0C */ lwz r5, 0xc(r30) /* 80045B10 00042A70 7C 83 02 14 */ add r4, r3, r0 /* 80045B14 00042A74 48 00 00 29 */ bl sub_80045b3c /* 80045B18 00042A78 80 1F 00 04 */ lwz r0, 4(r31) /* 80045B1C 00042A7C 90 1E 00 04 */ stw r0, 4(r30) lbl_80045B20: /* 80045B20 00042A80 7F C3 F3 78 */ mr r3, r30 lbl_80045B24: /* 80045B24 00042A84 80 01 00 24 */ lwz r0, 0x24(r1) /* 80045B28 00042A88 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045B2C 00042A8C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80045B30 00042A90 7C 08 03 A6 */ mtlr r0 /* 80045B34 00042A94 38 21 00 20 */ addi r1, r1, 0x20 /* 80045B38 00042A98 4E 80 00 20 */ blr .global sub_80045b3c sub_80045b3c: /* 80045B3C 00042A9C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045B40 00042AA0 7C 08 02 A6 */ mflr r0 /* 80045B44 00042AA4 90 01 00 24 */ stw r0, 0x24(r1) /* 80045B48 00042AA8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045B4C 00042AAC 7C BF 2B 78 */ mr r31, r5 /* 80045B50 00042AB0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80045B54 00042AB4 7C 7E 1B 78 */ mr r30, r3 /* 80045B58 00042AB8 93 A1 00 14 */ stw r29, 0x14(r1) /* 80045B5C 00042ABC 7C 9D 23 78 */ mr r29, r4 /* 80045B60 00042AC0 48 00 00 18 */ b lbl_80045B78 lbl_80045B64: /* 80045B64 00042AC4 7F E3 FB 78 */ mr r3, r31 /* 80045B68 00042AC8 7F C4 F3 78 */ mr r4, r30 /* 80045B6C 00042ACC 4B FF FE D5 */ bl sub_80045a40 /* 80045B70 00042AD0 3B FF 00 50 */ addi r31, r31, 0x50 /* 80045B74 00042AD4 3B DE 00 50 */ addi r30, r30, 0x50 lbl_80045B78: /* 80045B78 00042AD8 7C 1E E8 40 */ cmplw r30, r29 /* 80045B7C 00042ADC 40 82 FF E8 */ bne lbl_80045B64 /* 80045B80 00042AE0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80045B84 00042AE4 7F E3 FB 78 */ mr r3, r31 /* 80045B88 00042AE8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045B8C 00042AEC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80045B90 00042AF0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80045B94 00042AF4 7C 08 03 A6 */ mtlr r0 /* 80045B98 00042AF8 38 21 00 20 */ addi r1, r1, 0x20 /* 80045B9C 00042AFC 4E 80 00 20 */ blr .global DrawDebugStuff__13CStateManagerCFv DrawDebugStuff__13CStateManagerCFv: /* 80045BA0 00042B00 4E 80 00 20 */ blr .global RenderCamerasAndAreaLights__13CStateManagerCFv RenderCamerasAndAreaLights__13CStateManagerCFv: /* 80045BA4 00042B04 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80045BA8 00042B08 7C 08 02 A6 */ mflr r0 /* 80045BAC 00042B0C 90 01 00 14 */ stw r0, 0x14(r1) /* 80045BB0 00042B10 93 E1 00 0C */ stw r31, 0xc(r1) /* 80045BB4 00042B14 7C 7F 1B 78 */ mr r31, r3 /* 80045BB8 00042B18 7F E4 FB 78 */ mr r4, r31 /* 80045BBC 00042B1C 93 C1 00 08 */ stw r30, 8(r1) /* 80045BC0 00042B20 80 63 08 70 */ lwz r3, 0x870(r3) /* 80045BC4 00042B24 4B FC 60 45 */ bl RenderCameras__14CCameraManagerFRC13CStateManager /* 80045BC8 00042B28 3B C0 00 00 */ li r30, 0 /* 80045BCC 00042B2C 3B FF 0B 88 */ addi r31, r31, 0xb88 lbl_80045BD0: /* 80045BD0 00042B30 7F E3 FB 78 */ mr r3, r31 /* 80045BD4 00042B34 48 0A 66 BD */ bl Draw__17CCameraFilterPassCFv /* 80045BD8 00042B38 3B DE 00 01 */ addi r30, r30, 1 /* 80045BDC 00042B3C 3B FF 00 2C */ addi r31, r31, 0x2c /* 80045BE0 00042B40 2C 1E 00 09 */ cmpwi r30, 9 /* 80045BE4 00042B44 41 80 FF EC */ blt lbl_80045BD0 /* 80045BE8 00042B48 80 01 00 14 */ lwz r0, 0x14(r1) /* 80045BEC 00042B4C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80045BF0 00042B50 83 C1 00 08 */ lwz r30, 8(r1) /* 80045BF4 00042B54 7C 08 03 A6 */ mtlr r0 /* 80045BF8 00042B58 38 21 00 10 */ addi r1, r1, 0x10 /* 80045BFC 00042B5C 4E 80 00 20 */ blr .global DrawE3DeathEffect__13CStateManagerCFv DrawE3DeathEffect__13CStateManagerCFv: /* 80045C00 00042B60 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80045C04 00042B64 7C 08 02 A6 */ mflr r0 /* 80045C08 00042B68 90 01 00 84 */ stw r0, 0x84(r1) /* 80045C0C 00042B6C DB E1 00 70 */ stfd f31, 0x70(r1) /* 80045C10 00042B70 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 80045C14 00042B74 DB C1 00 60 */ stfd f30, 0x60(r1) /* 80045C18 00042B78 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 80045C1C 00042B7C DB A1 00 50 */ stfd f29, 0x50(r1) /* 80045C20 00042B80 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 80045C24 00042B84 80 63 08 4C */ lwz r3, 0x84c(r3) /* 80045C28 00042B88 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80045C2C 00042B8C C3 C3 09 F4 */ lfs f30, 0x9f4(r3) /* 80045C30 00042B90 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 80045C34 00042B94 40 81 01 08 */ ble lbl_80045D3C /* 80045C38 00042B98 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 80045C3C 00042B9C 2C 00 00 00 */ cmpwi r0, 0 /* 80045C40 00042BA0 41 82 00 94 */ beq lbl_80045CD4 /* 80045C44 00042BA4 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80045C48 00042BA8 38 81 00 14 */ addi r4, r1, 0x14 /* 80045C4C 00042BAC C0 02 80 F0 */ lfs f0, lbl_805A9E10@sda21(r2) /* 80045C50 00042BB0 38 6D 82 88 */ addi r3, r13, lbl_805A6E48@sda21 /* 80045C54 00042BB4 EC 3E 10 28 */ fsubs f1, f30, f2 /* 80045C58 00042BB8 38 AD 82 8C */ addi r5, r13, lbl_805A6E4C@sda21 /* 80045C5C 00042BBC EC 00 10 28 */ fsubs f0, f0, f2 /* 80045C60 00042BC0 EC 01 00 24 */ fdivs f0, f1, f0 /* 80045C64 00042BC4 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80045C68 00042BC8 4B FC 66 4D */ bl "Clamp__5CMathFRCfRCfRCf" /* 80045C6C 00042BCC C3 A3 00 00 */ lfs f29, 0(r3) /* 80045C70 00042BD0 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80045C74 00042BD4 FC 1D 00 40 */ fcmpo cr0, f29, f0 /* 80045C78 00042BD8 40 81 00 5C */ ble lbl_80045CD4 /* 80045C7C 00042BDC 38 61 00 18 */ addi r3, r1, 0x18 /* 80045C80 00042BE0 48 0A 63 BD */ bl __ct__15CCameraBlurPassFv /* 80045C84 00042BE4 C0 02 85 B0 */ lfs f0, lbl_805AA2D0@sda21(r2) /* 80045C88 00042BE8 38 61 00 18 */ addi r3, r1, 0x18 /* 80045C8C 00042BEC C0 42 85 68 */ lfs f2, lbl_805AA288@sda21(r2) /* 80045C90 00042BF0 38 80 00 02 */ li r4, 2 /* 80045C94 00042BF4 EC 20 07 72 */ fmuls f1, f0, f29 /* 80045C98 00042BF8 38 A0 00 00 */ li r5, 0 /* 80045C9C 00042BFC 48 0A 5D 09 */ bl SetBlur__15CCameraBlurPassFQ215CCameraBlurPass9EBlurTypeffb /* 80045CA0 00042C00 38 61 00 18 */ addi r3, r1, 0x18 /* 80045CA4 00042C04 48 0A 4D E5 */ bl Draw__15CCameraBlurPassCFv /* 80045CA8 00042C08 88 01 00 24 */ lbz r0, 0x24(r1) /* 80045CAC 00042C0C 28 00 00 00 */ cmplwi r0, 0 /* 80045CB0 00042C10 41 82 00 1C */ beq lbl_80045CCC /* 80045CB4 00042C14 34 61 00 18 */ addic. r3, r1, 0x18 /* 80045CB8 00042C18 41 82 00 14 */ beq lbl_80045CCC /* 80045CBC 00042C1C 28 03 00 00 */ cmplwi r3, 0 /* 80045CC0 00042C20 41 82 00 0C */ beq lbl_80045CCC /* 80045CC4 00042C24 38 80 00 00 */ li r4, 0 /* 80045CC8 00042C28 48 2F B1 79 */ bl __dt__6CTokenFv lbl_80045CCC: /* 80045CCC 00042C2C 38 00 00 00 */ li r0, 0 /* 80045CD0 00042C30 98 01 00 24 */ stb r0, 0x24(r1) lbl_80045CD4: /* 80045CD4 00042C34 C0 22 85 B4 */ lfs f1, lbl_805AA2D4@sda21(r2) /* 80045CD8 00042C38 38 81 00 10 */ addi r4, r1, 0x10 /* 80045CDC 00042C3C C0 02 80 F0 */ lfs f0, lbl_805A9E10@sda21(r2) /* 80045CE0 00042C40 38 6D 82 90 */ addi r3, r13, lbl_805A6E50@sda21 /* 80045CE4 00042C44 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80045CE8 00042C48 38 AD 82 94 */ addi r5, r13, lbl_805A6E54@sda21 /* 80045CEC 00042C4C EC 01 00 32 */ fmuls f0, f1, f0 /* 80045CF0 00042C50 EC 1E 00 24 */ fdivs f0, f30, f0 /* 80045CF4 00042C54 EC 02 00 28 */ fsubs f0, f2, f0 /* 80045CF8 00042C58 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80045CFC 00042C5C 4B FC 65 B9 */ bl "Clamp__5CMathFRCfRCfRCf" /* 80045D00 00042C60 C3 A3 00 00 */ lfs f29, 0(r3) /* 80045D04 00042C64 48 30 42 A9 */ bl White__6CColorFv /* 80045D08 00042C68 C0 02 85 B8 */ lfs f0, lbl_805AA2D8@sda21(r2) /* 80045D0C 00042C6C EF E0 07 72 */ fmuls f31, f0, f29 /* 80045D10 00042C70 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 /* 80045D14 00042C74 38 A1 00 0C */ addi r5, r1, 0xc /* 80045D18 00042C78 80 E3 00 00 */ lwz r7, 0(r3) /* 80045D1C 00042C7C 38 60 00 03 */ li r3, 3 /* 80045D20 00042C80 88 01 00 08 */ lbz r0, 8(r1) /* 80045D24 00042C84 38 80 00 00 */ li r4, 0 /* 80045D28 00042C88 50 E0 00 2E */ rlwimi r0, r7, 0, 0, 0x17 /* 80045D2C 00042C8C C0 22 85 64 */ lfs f1, lbl_805AA284@sda21(r2) /* 80045D30 00042C90 90 01 00 0C */ stw r0, 0xc(r1) /* 80045D34 00042C94 38 C0 00 00 */ li r6, 0 /* 80045D38 00042C98 48 0A 64 11 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef lbl_80045D3C: /* 80045D3C 00042C9C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 80045D40 00042CA0 CB E1 00 70 */ lfd f31, 0x70(r1) /* 80045D44 00042CA4 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 80045D48 00042CA8 CB C1 00 60 */ lfd f30, 0x60(r1) /* 80045D4C 00042CAC E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 /* 80045D50 00042CB0 80 01 00 84 */ lwz r0, 0x84(r1) /* 80045D54 00042CB4 CB A1 00 50 */ lfd f29, 0x50(r1) /* 80045D58 00042CB8 7C 08 03 A6 */ mtlr r0 /* 80045D5C 00042CBC 38 21 00 80 */ addi r1, r1, 0x80 /* 80045D60 00042CC0 4E 80 00 20 */ blr .global DrawAdditionalFilters__13CStateManagerCFv DrawAdditionalFilters__13CStateManagerCFv: /* 80045D64 00042CC4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80045D68 00042CC8 7C 08 02 A6 */ mflr r0 /* 80045D6C 00042CCC 90 01 00 44 */ stw r0, 0x44(r1) /* 80045D70 00042CD0 DB E1 00 30 */ stfd f31, 0x30(r1) /* 80045D74 00042CD4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80045D78 00042CD8 DB C1 00 20 */ stfd f30, 0x20(r1) /* 80045D7C 00042CDC F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80045D80 00042CE0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045D84 00042CE4 7C 7F 1B 78 */ mr r31, r3 /* 80045D88 00042CE8 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 80045D8C 00042CEC C0 23 0F 0C */ lfs f1, 0xf0c(r3) /* 80045D90 00042CF0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80045D94 00042CF4 40 80 00 64 */ bge lbl_80045DF8 /* 80045D98 00042CF8 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80045D9C 00042CFC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80045DA0 00042D00 40 81 00 58 */ ble lbl_80045DF8 /* 80045DA4 00042D04 80 7F 08 70 */ lwz r3, 0x870(r31) /* 80045DA8 00042D08 4B FC 4B 59 */ bl IsInCinematicCamera__14CCameraManagerCFv /* 80045DAC 00042D0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80045DB0 00042D10 40 82 00 48 */ bne lbl_80045DF8 /* 80045DB4 00042D14 C0 22 85 64 */ lfs f1, lbl_805AA284@sda21(r2) /* 80045DB8 00042D18 C0 1F 0F 0C */ lfs f0, 0xf0c(r31) /* 80045DBC 00042D1C EF C1 00 28 */ fsubs f30, f1, f0 /* 80045DC0 00042D20 48 30 41 ED */ bl White__6CColorFv /* 80045DC4 00042D24 C0 02 85 B8 */ lfs f0, lbl_805AA2D8@sda21(r2) /* 80045DC8 00042D28 EF E0 07 B2 */ fmuls f31, f0, f30 /* 80045DCC 00042D2C F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 /* 80045DD0 00042D30 38 A1 00 0C */ addi r5, r1, 0xc /* 80045DD4 00042D34 80 E3 00 00 */ lwz r7, 0(r3) /* 80045DD8 00042D38 38 60 00 03 */ li r3, 3 /* 80045DDC 00042D3C 88 01 00 08 */ lbz r0, 8(r1) /* 80045DE0 00042D40 38 80 00 00 */ li r4, 0 /* 80045DE4 00042D44 50 E0 00 2E */ rlwimi r0, r7, 0, 0, 0x17 /* 80045DE8 00042D48 C0 22 85 64 */ lfs f1, lbl_805AA284@sda21(r2) /* 80045DEC 00042D4C 90 01 00 0C */ stw r0, 0xc(r1) /* 80045DF0 00042D50 38 C0 00 00 */ li r6, 0 /* 80045DF4 00042D54 48 0A 63 55 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef lbl_80045DF8: /* 80045DF8 00042D58 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80045DFC 00042D5C CB E1 00 30 */ lfd f31, 0x30(r1) /* 80045E00 00042D60 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 80045E04 00042D64 CB C1 00 20 */ lfd f30, 0x20(r1) /* 80045E08 00042D68 80 01 00 44 */ lwz r0, 0x44(r1) /* 80045E0C 00042D6C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045E10 00042D70 7C 08 03 A6 */ mtlr r0 /* 80045E14 00042D74 38 21 00 40 */ addi r1, r1, 0x40 /* 80045E18 00042D78 4E 80 00 20 */ blr .global ResetViewAfterDraw__13CStateManagerCFRCQ29CGraphics9CViewportRC12CTransform4f ResetViewAfterDraw__13CStateManagerCFRCQ29CGraphics9CViewportRC12CTransform4f: /* 80045E1C 00042D7C 94 21 FF 70 */ stwu r1, -0x90(r1) /* 80045E20 00042D80 7C 08 02 A6 */ mflr r0 /* 80045E24 00042D84 7C 87 23 78 */ mr r7, r4 /* 80045E28 00042D88 90 01 00 94 */ stw r0, 0x94(r1) /* 80045E2C 00042D8C 93 E1 00 8C */ stw r31, 0x8c(r1) /* 80045E30 00042D90 7C 7F 1B 78 */ mr r31, r3 /* 80045E34 00042D94 93 C1 00 88 */ stw r30, 0x88(r1) /* 80045E38 00042D98 7C BE 2B 78 */ mr r30, r5 /* 80045E3C 00042D9C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80045E40 00042DA0 80 84 00 00 */ lwz r4, 0(r4) /* 80045E44 00042DA4 81 83 00 00 */ lwz r12, 0(r3) /* 80045E48 00042DA8 80 A7 00 04 */ lwz r5, 4(r7) /* 80045E4C 00042DAC 81 8C 00 5C */ lwz r12, 0x5c(r12) /* 80045E50 00042DB0 80 C7 00 08 */ lwz r6, 8(r7) /* 80045E54 00042DB4 80 E7 00 0C */ lwz r7, 0xc(r7) /* 80045E58 00042DB8 7D 89 03 A6 */ mtctr r12 /* 80045E5C 00042DBC 4E 80 04 21 */ bctrl /* 80045E60 00042DC0 80 7F 08 70 */ lwz r3, 0x870(r31) /* 80045E64 00042DC4 7F E4 FB 78 */ mr r4, r31 /* 80045E68 00042DC8 4B FC 5C B1 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 80045E6C 00042DCC 7C 7F 1B 78 */ mr r31, r3 /* 80045E70 00042DD0 C0 22 85 BC */ lfs f1, lbl_805AA2DC@sda21(r2) /* 80045E74 00042DD4 C0 03 01 5C */ lfs f0, 0x15c(r3) /* 80045E78 00042DD8 7F C4 F3 78 */ mr r4, r30 /* 80045E7C 00042DDC C0 43 01 68 */ lfs f2, 0x168(r3) /* 80045E80 00042DE0 38 61 00 08 */ addi r3, r1, 8 /* 80045E84 00042DE4 EC 21 00 32 */ fmuls f1, f1, f0 /* 80045E88 00042DE8 C0 7F 01 60 */ lfs f3, 0x160(r31) /* 80045E8C 00042DEC C0 82 85 C0 */ lfs f4, lbl_805AA2E0@sda21(r2) /* 80045E90 00042DF0 38 A0 00 00 */ li r5, 0 /* 80045E94 00042DF4 48 2F F3 C1 */ bl __ct__14CFrustumPlanesFRC12CTransform4ffffbf /* 80045E98 00042DF8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80045E9C 00042DFC 38 81 00 08 */ addi r4, r1, 8 /* 80045EA0 00042E00 81 83 00 00 */ lwz r12, 0(r3) /* 80045EA4 00042E04 81 8C 00 58 */ lwz r12, 0x58(r12) /* 80045EA8 00042E08 7D 89 03 A6 */ mtctr r12 /* 80045EAC 00042E0C 4E 80 04 21 */ bctrl /* 80045EB0 00042E10 3C 60 80 3F */ lis r3, lbl_803ED910@ha /* 80045EB4 00042E14 3C 80 43 30 */ lis r4, 0x4330 /* 80045EB8 00042E18 38 C3 D9 10 */ addi r6, r3, lbl_803ED910@l /* 80045EBC 00042E1C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80045EC0 00042E20 80 A6 00 08 */ lwz r5, 8(r6) /* 80045EC4 00042E24 80 06 00 0C */ lwz r0, 0xc(r6) /* 80045EC8 00042E28 6C A5 80 00 */ xoris r5, r5, 0x8000 /* 80045ECC 00042E2C 81 83 00 00 */ lwz r12, 0(r3) /* 80045ED0 00042E30 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80045ED4 00042E34 90 A1 00 74 */ stw r5, 0x74(r1) /* 80045ED8 00042E38 C8 62 85 A8 */ lfd f3, lbl_805AA2C8@sda21(r2) /* 80045EDC 00042E3C 90 81 00 70 */ stw r4, 0x70(r1) /* 80045EE0 00042E40 81 8C 00 4C */ lwz r12, 0x4c(r12) /* 80045EE4 00042E44 C8 01 00 70 */ lfd f0, 0x70(r1) /* 80045EE8 00042E48 90 01 00 7C */ stw r0, 0x7c(r1) /* 80045EEC 00042E4C EC 40 18 28 */ fsubs f2, f0, f3 /* 80045EF0 00042E50 C0 3F 01 5C */ lfs f1, 0x15c(r31) /* 80045EF4 00042E54 90 81 00 78 */ stw r4, 0x78(r1) /* 80045EF8 00042E58 C0 9F 01 60 */ lfs f4, 0x160(r31) /* 80045EFC 00042E5C C8 01 00 78 */ lfd f0, 0x78(r1) /* 80045F00 00042E60 C0 BF 01 64 */ lfs f5, 0x164(r31) /* 80045F04 00042E64 EC 60 18 28 */ fsubs f3, f0, f3 /* 80045F08 00042E68 7D 89 03 A6 */ mtctr r12 /* 80045F0C 00042E6C 4E 80 04 21 */ bctrl /* 80045F10 00042E70 80 A1 00 08 */ lwz r5, 8(r1) /* 80045F14 00042E74 38 60 00 00 */ li r3, 0 /* 80045F18 00042E78 2C 05 00 00 */ cmpwi r5, 0 /* 80045F1C 00042E7C 40 81 00 40 */ ble lbl_80045F5C /* 80045F20 00042E80 2C 05 00 08 */ cmpwi r5, 8 /* 80045F24 00042E84 38 85 FF F8 */ addi r4, r5, -8 /* 80045F28 00042E88 40 81 00 20 */ ble lbl_80045F48 /* 80045F2C 00042E8C 38 04 00 07 */ addi r0, r4, 7 /* 80045F30 00042E90 54 00 E8 FE */ srwi r0, r0, 3 /* 80045F34 00042E94 7C 09 03 A6 */ mtctr r0 /* 80045F38 00042E98 2C 04 00 00 */ cmpwi r4, 0 /* 80045F3C 00042E9C 40 81 00 0C */ ble lbl_80045F48 lbl_80045F40: /* 80045F40 00042EA0 38 63 00 08 */ addi r3, r3, 8 /* 80045F44 00042EA4 42 00 FF FC */ bdnz lbl_80045F40 lbl_80045F48: /* 80045F48 00042EA8 7C 03 28 50 */ subf r0, r3, r5 /* 80045F4C 00042EAC 7C 09 03 A6 */ mtctr r0 /* 80045F50 00042EB0 7C 03 28 00 */ cmpw r3, r5 /* 80045F54 00042EB4 40 80 00 08 */ bge lbl_80045F5C lbl_80045F58: /* 80045F58 00042EB8 42 00 00 00 */ bdnz lbl_80045F58 lbl_80045F5C: /* 80045F5C 00042EBC 38 00 00 00 */ li r0, 0 /* 80045F60 00042EC0 90 01 00 08 */ stw r0, 8(r1) /* 80045F64 00042EC4 80 01 00 94 */ lwz r0, 0x94(r1) /* 80045F68 00042EC8 83 E1 00 8C */ lwz r31, 0x8c(r1) /* 80045F6C 00042ECC 83 C1 00 88 */ lwz r30, 0x88(r1) /* 80045F70 00042ED0 7C 08 03 A6 */ mtlr r0 /* 80045F74 00042ED4 38 21 00 90 */ addi r1, r1, 0x90 /* 80045F78 00042ED8 4E 80 00 20 */ blr .global DrawWorld__13CStateManagerCFv DrawWorld__13CStateManagerCFv: /* 80045F7C 00042EDC 94 21 EC C0 */ stwu r1, -0x1340(r1) /* 80045F80 00042EE0 7C 08 02 A6 */ mflr r0 /* 80045F84 00042EE4 90 01 13 44 */ stw r0, 0x1344(r1) /* 80045F88 00042EE8 BD C1 12 F8 */ stmw r14, 0x12f8(r1) /* 80045F8C 00042EEC 7C 70 1B 78 */ mr r16, r3 /* 80045F90 00042EF0 38 61 00 90 */ addi r3, r1, 0x90 /* 80045F94 00042EF4 38 90 0F 14 */ addi r4, r16, 0xf14 /* 80045F98 00042EF8 48 31 23 3D */ bl __ct__13CTimeProviderFRCf /* 80045F9C 00042EFC 3C 60 80 3F */ lis r3, lbl_803ED910@ha /* 80045FA0 00042F00 7E 04 83 78 */ mr r4, r16 /* 80045FA4 00042F04 39 63 D9 10 */ addi r11, r3, lbl_803ED910@l /* 80045FA8 00042F08 38 61 01 54 */ addi r3, r1, 0x154 /* 80045FAC 00042F0C 81 4B 00 00 */ lwz r10, 0(r11) /* 80045FB0 00042F10 38 A1 00 B0 */ addi r5, r1, 0xb0 /* 80045FB4 00042F14 81 2B 00 04 */ lwz r9, 4(r11) /* 80045FB8 00042F18 81 0B 00 08 */ lwz r8, 8(r11) /* 80045FBC 00042F1C 80 EB 00 0C */ lwz r7, 0xc(r11) /* 80045FC0 00042F20 80 CB 00 10 */ lwz r6, 0x10(r11) /* 80045FC4 00042F24 80 0B 00 14 */ lwz r0, 0x14(r11) /* 80045FC8 00042F28 91 41 00 B0 */ stw r10, 0xb0(r1) /* 80045FCC 00042F2C 91 21 00 B4 */ stw r9, 0xb4(r1) /* 80045FD0 00042F30 91 01 00 B8 */ stw r8, 0xb8(r1) /* 80045FD4 00042F34 90 E1 00 BC */ stw r7, 0xbc(r1) /* 80045FD8 00042F38 90 C1 00 C0 */ stw r6, 0xc0(r1) /* 80045FDC 00042F3C 90 01 00 C4 */ stw r0, 0xc4(r1) /* 80045FE0 00042F40 48 00 10 05 */ bl SetupViewForDraw__13CStateManagerCFRCQ29CGraphics9CViewport /* 80045FE4 00042F44 80 01 01 54 */ lwz r0, 0x154(r1) /* 80045FE8 00042F48 38 81 01 58 */ addi r4, r1, 0x158 /* 80045FEC 00042F4C 38 61 01 BC */ addi r3, r1, 0x1bc /* 80045FF0 00042F50 90 01 01 B8 */ stw r0, 0x1b8(r1) /* 80045FF4 00042F54 7C 09 03 A6 */ mtctr r0 /* 80045FF8 00042F58 2C 00 00 00 */ cmpwi r0, 0 /* 80045FFC 00042F5C 40 81 00 38 */ ble lbl_80046034 lbl_80046000: /* 80046000 00042F60 28 03 00 00 */ cmplwi r3, 0 /* 80046004 00042F64 41 82 00 24 */ beq lbl_80046028 /* 80046008 00042F68 C0 24 00 00 */ lfs f1, 0(r4) /* 8004600C 00042F6C C0 04 00 04 */ lfs f0, 4(r4) /* 80046010 00042F70 D0 23 00 00 */ stfs f1, 0(r3) /* 80046014 00042F74 C0 24 00 08 */ lfs f1, 8(r4) /* 80046018 00042F78 D0 03 00 04 */ stfs f0, 4(r3) /* 8004601C 00042F7C C0 04 00 0C */ lfs f0, 0xc(r4) /* 80046020 00042F80 D0 23 00 08 */ stfs f1, 8(r3) /* 80046024 00042F84 D0 03 00 0C */ stfs f0, 0xc(r3) lbl_80046028: /* 80046028 00042F88 38 63 00 10 */ addi r3, r3, 0x10 /* 8004602C 00042F8C 38 84 00 10 */ addi r4, r4, 0x10 /* 80046030 00042F90 42 00 FF D0 */ bdnz lbl_80046000 lbl_80046034: /* 80046034 00042F94 80 A1 01 54 */ lwz r5, 0x154(r1) /* 80046038 00042F98 38 60 00 00 */ li r3, 0 /* 8004603C 00042F9C 2C 05 00 00 */ cmpwi r5, 0 /* 80046040 00042FA0 40 81 00 40 */ ble lbl_80046080 /* 80046044 00042FA4 2C 05 00 08 */ cmpwi r5, 8 /* 80046048 00042FA8 38 85 FF F8 */ addi r4, r5, -8 /* 8004604C 00042FAC 40 81 00 20 */ ble lbl_8004606C /* 80046050 00042FB0 38 04 00 07 */ addi r0, r4, 7 /* 80046054 00042FB4 54 00 E8 FE */ srwi r0, r0, 3 /* 80046058 00042FB8 7C 09 03 A6 */ mtctr r0 /* 8004605C 00042FBC 2C 04 00 00 */ cmpwi r4, 0 /* 80046060 00042FC0 40 81 00 0C */ ble lbl_8004606C lbl_80046064: /* 80046064 00042FC4 38 63 00 08 */ addi r3, r3, 8 /* 80046068 00042FC8 42 00 FF FC */ bdnz lbl_80046064 lbl_8004606C: /* 8004606C 00042FCC 7C 03 28 50 */ subf r0, r3, r5 /* 80046070 00042FD0 7C 09 03 A6 */ mtctr r0 /* 80046074 00042FD4 7C 03 28 00 */ cmpw r3, r5 /* 80046078 00042FD8 40 80 00 08 */ bge lbl_80046080 lbl_8004607C: /* 8004607C 00042FDC 42 00 00 00 */ bdnz lbl_8004607C lbl_80046080: /* 80046080 00042FE0 38 00 00 00 */ li r0, 0 /* 80046084 00042FE4 3C 60 80 5A */ lis r3, lbl_805A61D4@ha /* 80046088 00042FE8 90 01 01 54 */ stw r0, 0x154(r1) /* 8004608C 00042FEC 38 83 61 D4 */ addi r4, r3, lbl_805A61D4@l /* 80046090 00042FF0 38 61 01 24 */ addi r3, r1, 0x124 /* 80046094 00042FF4 48 2C CA E1 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80046098 00042FF8 7E 04 83 78 */ mr r4, r16 /* 8004609C 00042FFC 38 61 00 3C */ addi r3, r1, 0x3c /* 800460A0 00043000 4B FF E9 E1 */ bl GetVisAreaId__13CStateManagerCFv /* 800460A4 00043004 80 70 08 6C */ lwz r3, 0x86c(r16) /* 800460A8 00043008 38 00 00 00 */ li r0, 0 /* 800460AC 0004300C 80 81 00 3C */ lwz r4, 0x3c(r1) /* 800460B0 00043010 3F 03 00 01 */ addis r24, r3, 1 /* 800460B4 00043014 90 01 00 F8 */ stw r0, 0xf8(r1) /* 800460B8 00043018 7F 17 C3 78 */ mr r23, r24 /* 800460BC 0004301C 80 70 08 50 */ lwz r3, 0x850(r16) /* 800460C0 00043020 90 81 00 40 */ stw r4, 0x40(r1) /* 800460C4 00043024 3B 18 F3 9C */ addi r24, r24, -3172 /* 800460C8 00043028 3A F7 F3 70 */ addi r23, r23, -3216 /* 800460CC 0004302C 90 01 02 1C */ stw r0, 0x21c(r1) /* 800460D0 00043030 48 01 08 29 */ bl TouchSky__6CWorldCFv /* 800460D4 00043034 80 70 08 50 */ lwz r3, 0x850(r16) /* 800460D8 00043038 3B 61 00 FC */ addi r27, r1, 0xfc /* 800460DC 0004303C 81 C3 00 58 */ lwz r14, 0x58(r3) /* 800460E0 00043040 48 00 00 48 */ b lbl_80046128 lbl_800460E4: /* 800460E4 00043044 88 0E 00 F0 */ lbz r0, 0xf0(r14) /* 800460E8 00043048 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800460EC 0004304C 41 82 00 10 */ beq lbl_800460FC /* 800460F0 00043050 80 6E 01 2C */ lwz r3, 0x12c(r14) /* 800460F4 00043054 80 03 10 DC */ lwz r0, 0x10dc(r3) /* 800460F8 00043058 48 00 00 08 */ b lbl_80046100 lbl_800460FC: /* 800460FC 0004305C 38 00 00 00 */ li r0, 0 lbl_80046100: /* 80046100 00043060 2C 00 00 01 */ cmpwi r0, 1 /* 80046104 00043064 40 82 00 20 */ bne lbl_80046124 /* 80046108 00043068 54 80 10 3A */ slwi r0, r4, 2 /* 8004610C 0004306C 7C 7B 02 15 */ add. r3, r27, r0 /* 80046110 00043070 41 82 00 08 */ beq lbl_80046118 /* 80046114 00043074 91 C3 00 00 */ stw r14, 0(r3) lbl_80046118: /* 80046118 00043078 80 61 00 F8 */ lwz r3, 0xf8(r1) /* 8004611C 0004307C 38 03 00 01 */ addi r0, r3, 1 /* 80046120 00043080 90 01 00 F8 */ stw r0, 0xf8(r1) lbl_80046124: /* 80046124 00043084 81 CE 01 30 */ lwz r14, 0x130(r14) lbl_80046128: /* 80046128 00043088 38 61 00 38 */ addi r3, r1, 0x38 /* 8004612C 0004308C 48 00 0B E1 */ bl GetAliveAreasEnd__6CWorldFv /* 80046130 00043090 80 01 00 38 */ lwz r0, 0x38(r1) /* 80046134 00043094 7C 0E 00 40 */ cmplw r14, r0 /* 80046138 00043098 41 82 00 10 */ beq lbl_80046148 /* 8004613C 0004309C 80 81 00 F8 */ lwz r4, 0xf8(r1) /* 80046140 000430A0 2C 04 00 0A */ cmpwi r4, 0xa /* 80046144 000430A4 40 82 FF A0 */ bne lbl_800460E4 lbl_80046148: /* 80046148 000430A8 C0 41 01 28 */ lfs f2, 0x128(r1) /* 8004614C 000430AC 7F 63 DB 78 */ mr r3, r27 /* 80046150 000430B0 C0 21 01 38 */ lfs f1, 0x138(r1) /* 80046154 000430B4 38 A1 00 80 */ addi r5, r1, 0x80 /* 80046158 000430B8 C0 01 01 48 */ lfs f0, 0x148(r1) /* 8004615C 000430BC D0 41 00 70 */ stfs f2, 0x70(r1) /* 80046160 000430C0 81 21 00 40 */ lwz r9, 0x40(r1) /* 80046164 000430C4 D0 21 00 74 */ stfs f1, 0x74(r1) /* 80046168 000430C8 81 01 00 70 */ lwz r8, 0x70(r1) /* 8004616C 000430CC D0 01 00 78 */ stfs f0, 0x78(r1) /* 80046170 000430D0 80 E1 00 74 */ lwz r7, 0x74(r1) /* 80046174 000430D4 80 C1 00 78 */ lwz r6, 0x78(r1) /* 80046178 000430D8 80 01 00 F8 */ lwz r0, 0xf8(r1) /* 8004617C 000430DC 91 21 00 34 */ stw r9, 0x34(r1) /* 80046180 000430E0 54 00 10 3A */ slwi r0, r0, 2 /* 80046184 000430E4 D0 41 00 64 */ stfs f2, 0x64(r1) /* 80046188 000430E8 7C 9B 02 14 */ add r4, r27, r0 /* 8004618C 000430EC D0 21 00 68 */ stfs f1, 0x68(r1) /* 80046190 000430F0 D0 01 00 6C */ stfs f0, 0x6c(r1) /* 80046194 000430F4 91 21 00 7C */ stw r9, 0x7c(r1) /* 80046198 000430F8 91 01 00 80 */ stw r8, 0x80(r1) /* 8004619C 000430FC 90 E1 00 84 */ stw r7, 0x84(r1) /* 800461A0 00043100 90 C1 00 88 */ stw r6, 0x88(r1) /* 800461A4 00043104 91 21 00 8C */ stw r9, 0x8c(r1) /* 800461A8 00043108 48 00 95 A1 */ bl "sort__4rstlFPPC9CGameAreaPPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter" /* 800461AC 0004310C 81 C1 00 40 */ lwz r14, 0x40(r1) /* 800461B0 00043110 7F 71 DB 78 */ mr r17, r27 /* 800461B4 00043114 3B 41 02 20 */ addi r26, r1, 0x220 /* 800461B8 00043118 39 E1 00 A8 */ addi r15, r1, 0xa8 /* 800461BC 0004311C 48 00 00 A4 */ b lbl_80046260 lbl_800461C0: /* 800461C0 00043120 38 61 00 9C */ addi r3, r1, 0x9c /* 800461C4 00043124 38 80 00 02 */ li r4, 2 /* 800461C8 00043128 48 2D 01 B9 */ bl Reset__10CPVSVisSetFi /* 800461CC 0004312C 91 C1 00 28 */ stw r14, 0x28(r1) /* 800461D0 00043130 7E 03 83 78 */ mr r3, r16 /* 800461D4 00043134 80 F1 00 00 */ lwz r7, 0(r17) /* 800461D8 00043138 38 81 00 30 */ addi r4, r1, 0x30 /* 800461DC 0004313C 38 A1 00 28 */ addi r5, r1, 0x28 /* 800461E0 00043140 38 C1 00 9C */ addi r6, r1, 0x9c /* 800461E4 00043144 80 07 00 04 */ lwz r0, 4(r7) /* 800461E8 00043148 90 01 00 2C */ stw r0, 0x2c(r1) /* 800461EC 0004314C 90 01 00 30 */ stw r0, 0x30(r1) /* 800461F0 00043150 48 00 14 41 */ bl GetVisSetForArea__13CStateManagerCF7TAreaId7TAreaId /* 800461F4 00043154 80 01 02 1C */ lwz r0, 0x21c(r1) /* 800461F8 00043158 1C 00 00 14 */ mulli r0, r0, 0x14 /* 800461FC 0004315C 7C DA 02 15 */ add. r6, r26, r0 /* 80046200 00043160 41 82 00 34 */ beq lbl_80046234 /* 80046204 00043164 80 61 00 9C */ lwz r3, 0x9c(r1) /* 80046208 00043168 38 00 00 00 */ li r0, 0 /* 8004620C 0004316C 88 81 00 A8 */ lbz r4, 0xa8(r1) /* 80046210 00043170 90 66 00 00 */ stw r3, 0(r6) /* 80046214 00043174 80 61 00 A0 */ lwz r3, 0xa0(r1) /* 80046218 00043178 80 A1 00 A4 */ lwz r5, 0xa4(r1) /* 8004621C 0004317C 90 66 00 04 */ stw r3, 4(r6) /* 80046220 00043180 80 61 00 AC */ lwz r3, 0xac(r1) /* 80046224 00043184 90 A6 00 08 */ stw r5, 8(r6) /* 80046228 00043188 98 86 00 0C */ stb r4, 0xc(r6) /* 8004622C 0004318C 90 66 00 10 */ stw r3, 0x10(r6) /* 80046230 00043190 98 01 00 A8 */ stb r0, 0xa8(r1) lbl_80046234: /* 80046234 00043194 80 61 02 1C */ lwz r3, 0x21c(r1) /* 80046238 00043198 28 0F 00 00 */ cmplwi r15, 0 /* 8004623C 0004319C 38 03 00 01 */ addi r0, r3, 1 /* 80046240 000431A0 90 01 02 1C */ stw r0, 0x21c(r1) /* 80046244 000431A4 41 82 00 18 */ beq lbl_8004625C /* 80046248 000431A8 88 01 00 A8 */ lbz r0, 0xa8(r1) /* 8004624C 000431AC 28 00 00 00 */ cmplwi r0, 0 /* 80046250 000431B0 41 82 00 0C */ beq lbl_8004625C /* 80046254 000431B4 80 61 00 AC */ lwz r3, 0xac(r1) /* 80046258 000431B8 48 2C F6 D9 */ bl Free__7CMemoryFPCv lbl_8004625C: /* 8004625C 000431BC 3A 31 00 04 */ addi r17, r17, 4 lbl_80046260: /* 80046260 000431C0 80 01 00 F8 */ lwz r0, 0xf8(r1) /* 80046264 000431C4 54 00 10 3A */ slwi r0, r0, 2 /* 80046268 000431C8 7C 1B 02 14 */ add r0, r27, r0 /* 8004626C 000431CC 7C 11 00 40 */ cmplw r17, r0 /* 80046270 000431D0 40 82 FF 50 */ bne lbl_800461C0 /* 80046274 000431D4 80 70 08 B8 */ lwz r3, 0x8b8(r16) /* 80046278 000431D8 7E 04 83 78 */ mr r4, r16 /* 8004627C 000431DC 80 63 00 00 */ lwz r3, 0(r3) /* 80046280 000431E0 48 04 B2 D9 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80046284 000431E4 20 03 00 03 */ subfic r0, r3, 3 /* 80046288 000431E8 7C 04 00 34 */ cntlzw r4, r0 /* 8004628C 000431EC 54 80 DE 3F */ rlwinm. r0, r4, 0x1b, 0x18, 0x1f /* 80046290 000431F0 54 95 D9 7E */ srwi r21, r4, 5 /* 80046294 000431F4 41 82 00 18 */ beq lbl_800462AC /* 80046298 000431F8 38 00 00 01 */ li r0, 1 /* 8004629C 000431FC 3A C0 00 34 */ li r22, 0x34 /* 800462A0 00043200 90 10 0F 34 */ stw r0, 0xf34(r16) /* 800462A4 00043204 39 E0 00 00 */ li r15, 0 /* 800462A8 00043208 48 00 00 28 */ b lbl_800462D0 lbl_800462AC: /* 800462AC 0004320C 2C 03 00 01 */ cmpwi r3, 1 /* 800462B0 00043210 38 80 00 01 */ li r4, 1 /* 800462B4 00043214 40 82 00 08 */ bne lbl_800462BC /* 800462B8 00043218 38 80 00 03 */ li r4, 3 lbl_800462BC: /* 800462BC 0004321C 38 00 00 02 */ li r0, 2 /* 800462C0 00043220 38 60 00 01 */ li r3, 1 /* 800462C4 00043224 90 10 0F 34 */ stw r0, 0xf34(r16) /* 800462C8 00043228 7C 76 20 30 */ slw r22, r3, r4 /* 800462CC 0004322C 39 E0 00 00 */ li r15, 0 lbl_800462D0: /* 800462D0 00043230 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800462D4 00043234 7E A4 AB 78 */ mr r4, r21 /* 800462D8 00043238 80 CD A1 38 */ lwz r6, gpTweakGui@sda21(r13) /* 800462DC 0004323C 81 83 00 00 */ lwz r12, 0(r3) /* 800462E0 00043240 38 A6 02 90 */ addi r5, r6, 0x290 /* 800462E4 00043244 C0 26 02 8C */ lfs f1, 0x28c(r6) /* 800462E8 00043248 81 8C 00 E8 */ lwz r12, 0xe8(r12) /* 800462EC 0004324C 7D 89 03 A6 */ mtctr r12 /* 800462F0 00043250 4E 80 04 21 */ bctrl /* 800462F4 00043254 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800462F8 00043258 C0 30 0F 28 */ lfs f1, 0xf28(r16) /* 800462FC 0004325C 81 83 00 00 */ lwz r12, 0(r3) /* 80046300 00043260 C0 10 0F 24 */ lfs f0, 0xf24(r16) /* 80046304 00043264 81 8C 00 EC */ lwz r12, 0xec(r12) /* 80046308 00043268 EC 21 00 2A */ fadds f1, f1, f0 /* 8004630C 0004326C 7D 89 03 A6 */ mtctr r12 /* 80046310 00043270 4E 80 04 21 */ bctrl /* 80046314 00043274 80 61 00 F8 */ lwz r3, 0xf8(r1) /* 80046318 00043278 3A 63 FF FF */ addi r19, r3, -1 /* 8004631C 0004327C 1C 13 00 14 */ mulli r0, r19, 0x14 /* 80046320 00043280 56 63 10 3A */ slwi r3, r19, 2 /* 80046324 00043284 7D DB 1A 14 */ add r14, r27, r3 /* 80046328 00043288 7E 3A 02 14 */ add r17, r26, r0 /* 8004632C 0004328C 48 00 00 7C */ b lbl_800463A8 lbl_80046330: /* 80046330 00043290 82 8E 00 00 */ lwz r20, 0(r14) /* 80046334 00043294 7E 03 83 78 */ mr r3, r16 /* 80046338 00043298 7E 84 A3 78 */ mr r4, r20 /* 8004633C 0004329C 48 00 0B 35 */ bl SetupFogForArea__13CStateManagerCFRC9CGameArea /* 80046340 000432A0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046344 000432A4 7E 24 8B 78 */ mr r4, r17 /* 80046348 000432A8 82 54 00 04 */ lwz r18, 4(r20) /* 8004634C 000432AC 81 83 00 00 */ lwz r12, 0(r3) /* 80046350 000432B0 7E 45 93 78 */ mr r5, r18 /* 80046354 000432B4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 80046358 000432B8 7D 89 03 A6 */ mtctr r12 /* 8004635C 000432BC 4E 80 04 21 */ bctrl /* 80046360 000432C0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046364 000432C4 80 94 01 2C */ lwz r4, 0x12c(r20) /* 80046368 000432C8 81 83 00 00 */ lwz r12, 0(r3) /* 8004636C 000432CC C0 24 11 28 */ lfs f1, 0x1128(r4) /* 80046370 000432D0 81 8C 01 00 */ lwz r12, 0x100(r12) /* 80046374 000432D4 7D 89 03 A6 */ mtctr r12 /* 80046378 000432D8 4E 80 04 21 */ bctrl /* 8004637C 000432DC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046380 000432E0 7E 44 93 78 */ mr r4, r18 /* 80046384 000432E4 7E C5 B3 78 */ mr r5, r22 /* 80046388 000432E8 7D E6 7B 78 */ mr r6, r15 /* 8004638C 000432EC 81 83 00 00 */ lwz r12, 0(r3) /* 80046390 000432F0 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 80046394 000432F4 7D 89 03 A6 */ mtctr r12 /* 80046398 000432F8 4E 80 04 21 */ bctrl /* 8004639C 000432FC 39 CE FF FC */ addi r14, r14, -4 /* 800463A0 00043300 3A 31 FF EC */ addi r17, r17, -20 /* 800463A4 00043304 3A 73 FF FF */ addi r19, r19, -1 lbl_800463A8: /* 800463A8 00043308 2C 13 00 00 */ cmpwi r19, 0 /* 800463AC 0004330C 40 80 FF 84 */ bge lbl_80046330 /* 800463B0 00043310 7E 03 83 78 */ mr r3, r16 /* 800463B4 00043314 48 00 0B 69 */ bl SetupFogForDraw__13CStateManagerCFv /* 800463B8 00043318 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800463BC 0004331C 40 82 00 2C */ bne lbl_800463E8 /* 800463C0 00043320 48 30 3B F5 */ bl Black__6CColorFv /* 800463C4 00043324 7C 65 1B 78 */ mr r5, r3 /* 800463C8 00043328 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800463CC 0004332C C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 800463D0 00043330 38 80 00 00 */ li r4, 0 /* 800463D4 00043334 81 83 00 00 */ lwz r12, 0(r3) /* 800463D8 00043338 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 800463DC 0004333C 81 8C 00 E0 */ lwz r12, 0xe0(r12) /* 800463E0 00043340 7D 89 03 A6 */ mtctr r12 /* 800463E4 00043344 4E 80 04 21 */ bctrl lbl_800463E8: /* 800463E8 00043348 C0 41 01 30 */ lfs f2, 0x130(r1) /* 800463EC 0004334C 38 61 00 C8 */ addi r3, r1, 0xc8 /* 800463F0 00043350 C0 21 01 40 */ lfs f1, 0x140(r1) /* 800463F4 00043354 38 81 00 58 */ addi r4, r1, 0x58 /* 800463F8 00043358 C0 01 01 50 */ lfs f0, 0x150(r1) /* 800463FC 0004335C D0 41 00 58 */ stfs f2, 0x58(r1) /* 80046400 00043360 81 D0 08 50 */ lwz r14, 0x850(r16) /* 80046404 00043364 D0 21 00 5C */ stfs f1, 0x5c(r1) /* 80046408 00043368 D0 01 00 60 */ stfs f0, 0x60(r1) /* 8004640C 0004336C 48 2C CD 35 */ bl Translate__12CTransform4fFRC9CVector3f /* 80046410 00043370 7D C3 73 78 */ mr r3, r14 /* 80046414 00043374 38 81 00 C8 */ addi r4, r1, 0xc8 /* 80046418 00043378 48 00 FD B9 */ bl DrawSky__6CWorldCFRC12CTransform4f /* 8004641C 0004337C 80 61 00 F8 */ lwz r3, 0xf8(r1) /* 80046420 00043380 2C 03 00 00 */ cmpwi r3, 0 /* 80046424 00043384 41 82 00 18 */ beq lbl_8004643C /* 80046428 00043388 38 03 FF FF */ addi r0, r3, -1 /* 8004642C 0004338C 7E 03 83 78 */ mr r3, r16 /* 80046430 00043390 54 00 10 3A */ slwi r0, r0, 2 /* 80046434 00043394 7C 9B 00 2E */ lwzx r4, r27, r0 /* 80046438 00043398 48 00 0A 39 */ bl SetupFogForArea__13CStateManagerCFRC9CGameArea lbl_8004643C: /* 8004643C 0004339C 39 D7 00 04 */ addi r14, r23, 4 /* 80046440 000433A0 48 00 00 4C */ b lbl_8004648C lbl_80046444: /* 80046444 000433A4 A0 0E 00 00 */ lhz r0, 0(r14) /* 80046448 000433A8 7E 03 83 78 */ mr r3, r16 /* 8004644C 000433AC 38 81 00 20 */ addi r4, r1, 0x20 /* 80046450 000433B0 B0 01 00 20 */ sth r0, 0x20(r1) /* 80046454 000433B4 48 00 61 51 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80046458 000433B8 28 03 00 00 */ cmplwi r3, 0 /* 8004645C 000433BC 41 82 00 2C */ beq lbl_80046488 /* 80046460 000433C0 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80046464 000433C4 41 82 00 10 */ beq lbl_80046474 /* 80046468 000433C8 88 03 00 E6 */ lbz r0, 0xe6(r3) /* 8004646C 000433CC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 80046470 000433D0 41 82 00 18 */ beq lbl_80046488 lbl_80046474: /* 80046474 000433D4 81 83 00 00 */ lwz r12, 0(r3) /* 80046478 000433D8 7E 04 83 78 */ mr r4, r16 /* 8004647C 000433DC 81 8C 00 28 */ lwz r12, 0x28(r12) /* 80046480 000433E0 7D 89 03 A6 */ mtctr r12 /* 80046484 000433E4 4E 80 04 21 */ bctrl lbl_80046488: /* 80046488 000433E8 39 CE 00 02 */ addi r14, r14, 2 lbl_8004648C: /* 8004648C 000433EC 80 17 00 00 */ lwz r0, 0(r23) /* 80046490 000433F0 54 00 08 3C */ slwi r0, r0, 1 /* 80046494 000433F4 7C 77 02 14 */ add r3, r23, r0 /* 80046498 000433F8 38 03 00 04 */ addi r0, r3, 4 /* 8004649C 000433FC 7C 0E 00 40 */ cmplw r14, r0 /* 800464A0 00043400 40 82 FF A4 */ bne lbl_80046444 /* 800464A4 00043404 80 01 00 40 */ lwz r0, 0x40(r1) /* 800464A8 00043408 38 60 00 00 */ li r3, 0 /* 800464AC 0004340C 90 61 02 E8 */ stw r3, 0x2e8(r1) /* 800464B0 00043410 7F 7D DB 78 */ mr r29, r27 /* 800464B4 00043414 7F 5C D3 78 */ mr r28, r26 /* 800464B8 00043418 3B 21 02 EC */ addi r25, r1, 0x2ec /* 800464BC 0004341C 90 01 12 EC */ stw r0, 0x12ec(r1) /* 800464C0 00043420 3A 80 00 00 */ li r20, 0 /* 800464C4 00043424 3A 60 00 00 */ li r19, 0 /* 800464C8 00043428 48 00 02 50 */ b lbl_80046718 lbl_800464CC: /* 800464CC 0004342C 82 5D 00 00 */ lwz r18, 0(r29) /* 800464D0 00043430 7E 03 83 78 */ mr r3, r16 /* 800464D4 00043434 80 01 12 EC */ lwz r0, 0x12ec(r1) /* 800464D8 00043438 80 B2 00 04 */ lwz r5, 4(r18) /* 800464DC 0004343C 7E 44 93 78 */ mr r4, r18 /* 800464E0 00043440 7C 05 00 50 */ subf r0, r5, r0 /* 800464E4 00043444 7C 00 00 34 */ cntlzw r0, r0 /* 800464E8 00043448 54 0E D9 7E */ srwi r14, r0, 5 /* 800464EC 0004344C 48 00 09 85 */ bl SetupFogForArea__13CStateManagerCFRC9CGameArea /* 800464F0 00043450 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800464F4 00043454 80 92 01 2C */ lwz r4, 0x12c(r18) /* 800464F8 00043458 81 83 00 00 */ lwz r12, 0(r3) /* 800464FC 0004345C C0 24 11 28 */ lfs f1, 0x1128(r4) /* 80046500 00043460 81 8C 01 00 */ lwz r12, 0x100(r12) /* 80046504 00043464 7D 89 03 A6 */ mtctr r12 /* 80046508 00043468 4E 80 04 21 */ bctrl /* 8004650C 0004346C 80 72 01 2C */ lwz r3, 0x12c(r18) /* 80046510 00043470 83 E3 10 C0 */ lwz r31, 0x10c0(r3) /* 80046514 00043474 AA 3F 20 08 */ lha r17, 0x2008(r31) /* 80046518 00043478 48 00 01 58 */ b lbl_80046670 lbl_8004651C: /* 8004651C 0004347C 7F E3 FB 78 */ mr r3, r31 /* 80046520 00043480 7E 24 8B 78 */ mr r4, r17 /* 80046524 00043484 4B FC 97 B9 */ bl __vc__11CObjectListCFi /* 80046528 00043488 7C 64 1B 78 */ mr r4, r3 /* 8004652C 0004348C 38 61 00 44 */ addi r3, r1, 0x44 /* 80046530 00043490 48 06 97 61 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 80046534 00043494 83 C3 00 04 */ lwz r30, 4(r3) /* 80046538 00043498 28 1E 00 00 */ cmplwi r30, 0 /* 8004653C 0004349C 41 82 01 18 */ beq lbl_80046654 /* 80046540 000434A0 88 1E 00 E7 */ lbz r0, 0xe7(r30) /* 80046544 000434A4 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 80046548 000434A8 41 82 01 0C */ beq lbl_80046654 /* 8004654C 000434AC A0 7E 00 08 */ lhz r3, 8(r30) /* 80046550 000434B0 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80046554 000434B4 B0 61 00 24 */ sth r3, 0x24(r1) /* 80046558 000434B8 40 82 00 4C */ bne lbl_800465A4 /* 8004655C 000434BC B0 61 00 18 */ sth r3, 0x18(r1) /* 80046560 000434C0 7E 44 93 78 */ mr r4, r18 /* 80046564 000434C4 38 61 00 1C */ addi r3, r1, 0x1c /* 80046568 000434C8 38 A1 00 18 */ addi r5, r1, 0x18 /* 8004656C 000434CC 48 01 79 F9 */ bl LookupPVSUniqueID__9CGameAreaF9TUniqueId /* 80046570 000434D0 A0 61 00 1C */ lhz r3, 0x1c(r1) /* 80046574 000434D4 A0 01 00 24 */ lhz r0, 0x24(r1) /* 80046578 000434D8 7C 03 00 40 */ cmplw r3, r0 /* 8004657C 000434DC 40 82 00 28 */ bne lbl_800465A4 /* 80046580 000434E0 B0 01 00 14 */ sth r0, 0x14(r1) /* 80046584 000434E4 7E 43 93 78 */ mr r3, r18 /* 80046588 000434E8 38 81 00 14 */ addi r4, r1, 0x14 /* 8004658C 000434EC 48 01 79 F5 */ bl LookupPVSID__9CGameAreaF9TUniqueId /* 80046590 000434F0 7C 64 1B 78 */ mr r4, r3 /* 80046594 000434F4 7F 83 E3 78 */ mr r3, r28 /* 80046598 000434F8 48 2C FD 41 */ bl GetVisible__10CPVSVisSetCFi /* 8004659C 000434FC 2C 03 00 00 */ cmpwi r3, 0 /* 800465A0 00043500 41 82 00 B4 */ beq lbl_80046654 lbl_800465A4: /* 800465A4 00043504 80 70 08 4C */ lwz r3, 0x84c(r16) /* 800465A8 00043508 7C 1E 18 40 */ cmplw r30, r3 /* 800465AC 0004350C 40 82 00 44 */ bne lbl_800465F0 /* 800465B0 00043510 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 800465B4 00043514 40 82 00 A0 */ bne lbl_80046654 /* 800465B8 00043518 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 800465BC 0004351C 2C 00 00 01 */ cmpwi r0, 1 /* 800465C0 00043520 41 82 00 0C */ beq lbl_800465CC /* 800465C4 00043524 2C 00 00 00 */ cmpwi r0, 0 /* 800465C8 00043528 40 82 00 20 */ bne lbl_800465E8 lbl_800465CC: /* 800465CC 0004352C 81 83 00 00 */ lwz r12, 0(r3) /* 800465D0 00043530 7E 05 83 78 */ mr r5, r16 /* 800465D4 00043534 38 81 01 B8 */ addi r4, r1, 0x1b8 /* 800465D8 00043538 81 8C 00 24 */ lwz r12, 0x24(r12) /* 800465DC 0004353C 7D 89 03 A6 */ mtctr r12 /* 800465E0 00043540 4E 80 04 21 */ bctrl /* 800465E4 00043544 48 00 00 70 */ b lbl_80046654 lbl_800465E8: /* 800465E8 00043548 3A 80 00 01 */ li r20, 1 /* 800465EC 0004354C 48 00 00 68 */ b lbl_80046654 lbl_800465F0: /* 800465F0 00043550 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 800465F4 00043554 41 82 00 10 */ beq lbl_80046604 /* 800465F8 00043558 88 1E 00 E6 */ lbz r0, 0xe6(r30) /* 800465FC 0004355C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 80046600 00043560 41 82 00 20 */ beq lbl_80046620 lbl_80046604: /* 80046604 00043564 7F C3 F3 78 */ mr r3, r30 /* 80046608 00043568 7E 05 83 78 */ mr r5, r16 /* 8004660C 0004356C 81 9E 00 00 */ lwz r12, 0(r30) /* 80046610 00043570 38 81 01 B8 */ addi r4, r1, 0x1b8 /* 80046614 00043574 81 8C 00 24 */ lwz r12, 0x24(r12) /* 80046618 00043578 7D 89 03 A6 */ mtctr r12 /* 8004661C 0004357C 4E 80 04 21 */ bctrl lbl_80046620: /* 80046620 00043580 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80046624 00043584 41 82 00 30 */ beq lbl_80046654 /* 80046628 00043588 88 1E 00 E6 */ lbz r0, 0xe6(r30) /* 8004662C 0004358C 54 00 EF BD */ rlwinm. r0, r0, 0x1d, 0x1e, 0x1e /* 80046630 00043590 41 82 00 24 */ beq lbl_80046654 /* 80046634 00043594 80 01 02 E8 */ lwz r0, 0x2e8(r1) /* 80046638 00043598 54 00 10 3A */ slwi r0, r0, 2 /* 8004663C 0004359C 7C 79 02 15 */ add. r3, r25, r0 /* 80046640 000435A0 41 82 00 08 */ beq lbl_80046648 /* 80046644 000435A4 93 C3 00 00 */ stw r30, 0(r3) lbl_80046648: /* 80046648 000435A8 80 61 02 E8 */ lwz r3, 0x2e8(r1) /* 8004664C 000435AC 38 03 00 01 */ addi r0, r3, 1 /* 80046650 000435B0 90 01 02 E8 */ stw r0, 0x2e8(r1) lbl_80046654: /* 80046654 000435B4 2C 11 FF FF */ cmpwi r17, -1 /* 80046658 000435B8 41 82 00 14 */ beq lbl_8004666C /* 8004665C 000435BC 56 23 18 38 */ slwi r3, r17, 3 /* 80046660 000435C0 38 03 00 08 */ addi r0, r3, 8 /* 80046664 000435C4 7E 3F 02 AE */ lhax r17, r31, r0 /* 80046668 000435C8 48 00 00 08 */ b lbl_80046670 lbl_8004666C: /* 8004666C 000435CC 3A 20 FF FF */ li r17, -1 lbl_80046670: /* 80046670 000435D0 2C 11 FF FF */ cmpwi r17, -1 /* 80046674 000435D4 40 82 FE A8 */ bne lbl_8004651C /* 80046678 000435D8 55 C0 06 3F */ clrlwi. r0, r14, 0x18 /* 8004667C 000435DC 41 82 00 24 */ beq lbl_800466A0 /* 80046680 000435E0 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80046684 000435E4 40 82 00 1C */ bne lbl_800466A0 /* 80046688 000435E8 7E 04 83 78 */ mr r4, r16 /* 8004668C 000435EC 38 61 01 B8 */ addi r3, r1, 0x1b8 /* 80046690 000435F0 48 0D 08 35 */ bl AddToRenderer__13CDecalManagerFRC14CFrustumPlanesRC13CStateManager /* 80046694 000435F4 80 70 08 84 */ lwz r3, 0x884(r16) /* 80046698 000435F8 7E 04 83 78 */ mr r4, r16 /* 8004669C 000435FC 48 19 D9 C5 */ bl AddStragglersToRenderer__20CActorModelParticlesCFRC13CStateManager lbl_800466A0: /* 800466A0 00043600 80 70 08 DC */ lwz r3, 0x8dc(r16) /* 800466A4 00043604 7E 04 83 78 */ mr r4, r16 /* 800466A8 00043608 38 03 00 01 */ addi r0, r3, 1 /* 800466AC 0004360C 90 10 08 DC */ stw r0, 0x8dc(r16) /* 800466B0 00043610 80 70 08 4C */ lwz r3, 0x84c(r16) /* 800466B4 00043614 80 63 07 68 */ lwz r3, 0x768(r3) /* 800466B8 00043618 48 0A 73 65 */ bl DrawBallShadow__10CMorphBallFR13CStateManager /* 800466BC 0004361C 80 70 0F 7C */ lwz r3, 0xf7c(r16) /* 800466C0 00043620 28 03 00 00 */ cmplwi r3, 0 /* 800466C4 00043624 41 82 00 0C */ beq lbl_800466D0 /* 800466C8 00043628 7E 04 83 78 */ mr r4, r16 /* 800466CC 0004362C 48 25 70 09 */ bl Render__16CProjectedShadowFRC13CStateManager lbl_800466D0: /* 800466D0 00043630 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800466D4 00043634 7F 84 E3 78 */ mr r4, r28 /* 800466D8 00043638 80 B2 00 04 */ lwz r5, 4(r18) /* 800466DC 0004363C 81 83 00 00 */ lwz r12, 0(r3) /* 800466E0 00043640 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800466E4 00043644 7D 89 03 A6 */ mtctr r12 /* 800466E8 00043648 4E 80 04 21 */ bctrl /* 800466EC 0004364C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800466F0 00043650 7E C5 B3 78 */ mr r5, r22 /* 800466F4 00043654 7D E6 7B 78 */ mr r6, r15 /* 800466F8 00043658 80 92 00 04 */ lwz r4, 4(r18) /* 800466FC 0004365C 81 83 00 00 */ lwz r12, 0(r3) /* 80046700 00043660 81 8C 00 20 */ lwz r12, 0x20(r12) /* 80046704 00043664 7D 89 03 A6 */ mtctr r12 /* 80046708 00043668 4E 80 04 21 */ bctrl /* 8004670C 0004366C 3B BD 00 04 */ addi r29, r29, 4 /* 80046710 00043670 3B 9C 00 14 */ addi r28, r28, 0x14 /* 80046714 00043674 3A 73 00 01 */ addi r19, r19, 1 lbl_80046718: /* 80046718 00043678 80 01 00 F8 */ lwz r0, 0xf8(r1) /* 8004671C 0004367C 7C 13 00 00 */ cmpw r19, r0 /* 80046720 00043680 41 80 FD AC */ blt lbl_800464CC /* 80046724 00043684 80 70 08 80 */ lwz r3, 0x880(r16) /* 80046728 00043688 7E 04 83 78 */ mr r4, r16 /* 8004672C 0004368C 48 1C 9A E5 */ bl Render__13CEnvFxManagerFRC13CStateManager /* 80046730 00043690 56 80 06 3F */ clrlwi. r0, r20, 0x18 /* 80046734 00043694 41 82 00 1C */ beq lbl_80046750 /* 80046738 00043698 80 70 08 4C */ lwz r3, 0x84c(r16) /* 8004673C 0004369C 7E 04 83 78 */ mr r4, r16 /* 80046740 000436A0 81 83 00 00 */ lwz r12, 0(r3) /* 80046744 000436A4 81 8C 00 28 */ lwz r12, 0x28(r12) /* 80046748 000436A8 7D 89 03 A6 */ mtctr r12 /* 8004674C 000436AC 4E 80 04 21 */ bctrl lbl_80046750: /* 80046750 000436B0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046754 000436B4 81 83 00 00 */ lwz r12, 0(r3) /* 80046758 000436B8 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 8004675C 000436BC 7D 89 03 A6 */ mtctr r12 /* 80046760 000436C0 4E 80 04 21 */ bctrl /* 80046764 000436C4 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80046768 000436C8 41 82 02 D8 */ beq lbl_80046A40 /* 8004676C 000436CC 80 18 00 00 */ lwz r0, 0(r24) /* 80046770 000436D0 2C 00 00 00 */ cmpwi r0, 0 /* 80046774 000436D4 41 82 00 7C */ beq lbl_800467F0 /* 80046778 000436D8 C0 22 85 C4 */ lfs f1, lbl_805AA2E4@sda21(r2) /* 8004677C 000436DC C0 42 85 C8 */ lfs f2, lbl_805AA2E8@sda21(r2) /* 80046780 000436E0 48 2C 3C 61 */ bl SetDepthRange__9CGraphicsFff /* 80046784 000436E4 39 D8 00 04 */ addi r14, r24, 4 /* 80046788 000436E8 48 00 00 44 */ b lbl_800467CC lbl_8004678C: /* 8004678C 000436EC A0 0E 00 00 */ lhz r0, 0(r14) /* 80046790 000436F0 7E 03 83 78 */ mr r3, r16 /* 80046794 000436F4 38 81 00 10 */ addi r4, r1, 0x10 /* 80046798 000436F8 B0 01 00 10 */ sth r0, 0x10(r1) /* 8004679C 000436FC 48 00 5E 09 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 800467A0 00043700 28 03 00 00 */ cmplwi r3, 0 /* 800467A4 00043704 41 82 00 24 */ beq lbl_800467C8 /* 800467A8 00043708 88 03 00 E6 */ lbz r0, 0xe6(r3) /* 800467AC 0004370C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 800467B0 00043710 41 82 00 18 */ beq lbl_800467C8 /* 800467B4 00043714 81 83 00 00 */ lwz r12, 0(r3) /* 800467B8 00043718 7E 04 83 78 */ mr r4, r16 /* 800467BC 0004371C 81 8C 00 28 */ lwz r12, 0x28(r12) /* 800467C0 00043720 7D 89 03 A6 */ mtctr r12 /* 800467C4 00043724 4E 80 04 21 */ bctrl lbl_800467C8: /* 800467C8 00043728 39 CE 00 02 */ addi r14, r14, 2 lbl_800467CC: /* 800467CC 0004372C 80 18 00 00 */ lwz r0, 0(r24) /* 800467D0 00043730 54 00 08 3C */ slwi r0, r0, 1 /* 800467D4 00043734 7C 78 02 14 */ add r3, r24, r0 /* 800467D8 00043738 38 03 00 04 */ addi r0, r3, 4 /* 800467DC 0004373C 7C 0E 00 40 */ cmplw r14, r0 /* 800467E0 00043740 40 82 FF AC */ bne lbl_8004678C /* 800467E4 00043744 C0 22 85 80 */ lfs f1, lbl_805AA2A0@sda21(r2) /* 800467E8 00043748 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 800467EC 0004374C 48 2C 3B F5 */ bl SetDepthRange__9CGraphicsFff lbl_800467F0: /* 800467F0 00043750 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800467F4 00043754 81 83 00 00 */ lwz r12, 0(r3) /* 800467F8 00043758 81 8C 00 F0 */ lwz r12, 0xf0(r12) /* 800467FC 0004375C 7D 89 03 A6 */ mtctr r12 /* 80046800 00043760 4E 80 04 21 */ bctrl /* 80046804 00043764 38 00 00 00 */ li r0, 0 /* 80046808 00043768 39 D7 00 04 */ addi r14, r23, 4 /* 8004680C 0004376C 90 10 0F 34 */ stw r0, 0xf34(r16) /* 80046810 00043770 48 00 00 44 */ b lbl_80046854 lbl_80046814: /* 80046814 00043774 A0 0E 00 00 */ lhz r0, 0(r14) /* 80046818 00043778 7E 03 83 78 */ mr r3, r16 /* 8004681C 0004377C 38 81 00 0C */ addi r4, r1, 0xc /* 80046820 00043780 B0 01 00 0C */ sth r0, 0xc(r1) /* 80046824 00043784 48 00 5D 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80046828 00043788 28 03 00 00 */ cmplwi r3, 0 /* 8004682C 0004378C 41 82 00 24 */ beq lbl_80046850 /* 80046830 00043790 88 03 00 E6 */ lbz r0, 0xe6(r3) /* 80046834 00043794 54 00 EF BD */ rlwinm. r0, r0, 0x1d, 0x1e, 0x1e /* 80046838 00043798 41 82 00 18 */ beq lbl_80046850 /* 8004683C 0004379C 81 83 00 00 */ lwz r12, 0(r3) /* 80046840 000437A0 7E 04 83 78 */ mr r4, r16 /* 80046844 000437A4 81 8C 00 28 */ lwz r12, 0x28(r12) /* 80046848 000437A8 7D 89 03 A6 */ mtctr r12 /* 8004684C 000437AC 4E 80 04 21 */ bctrl lbl_80046850: /* 80046850 000437B0 39 CE 00 02 */ addi r14, r14, 2 lbl_80046854: /* 80046854 000437B4 80 17 00 00 */ lwz r0, 0(r23) /* 80046858 000437B8 54 00 08 3C */ slwi r0, r0, 1 /* 8004685C 000437BC 7C 77 02 14 */ add r3, r23, r0 /* 80046860 000437C0 38 03 00 04 */ addi r0, r3, 4 /* 80046864 000437C4 7C 0E 00 40 */ cmplw r14, r0 /* 80046868 000437C8 40 82 FF AC */ bne lbl_80046814 /* 8004686C 000437CC 80 61 00 F8 */ lwz r3, 0xf8(r1) /* 80046870 000437D0 3A 43 FF FF */ addi r18, r3, -1 /* 80046874 000437D4 1C 12 00 14 */ mulli r0, r18, 0x14 /* 80046878 000437D8 56 43 10 3A */ slwi r3, r18, 2 /* 8004687C 000437DC 7D DB 1A 14 */ add r14, r27, r3 /* 80046880 000437E0 7D FA 02 14 */ add r15, r26, r0 /* 80046884 000437E4 48 00 00 74 */ b lbl_800468F8 lbl_80046888: /* 80046888 000437E8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 8004688C 000437EC 7D E4 7B 78 */ mr r4, r15 /* 80046890 000437F0 80 AE 00 00 */ lwz r5, 0(r14) /* 80046894 000437F4 81 83 00 00 */ lwz r12, 0(r3) /* 80046898 000437F8 82 25 00 04 */ lwz r17, 4(r5) /* 8004689C 000437FC 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800468A0 00043800 7E 25 8B 78 */ mr r5, r17 /* 800468A4 00043804 7D 89 03 A6 */ mtctr r12 /* 800468A8 00043808 4E 80 04 21 */ bctrl /* 800468AC 0004380C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800468B0 00043810 7E 24 8B 78 */ mr r4, r17 /* 800468B4 00043814 7E C5 B3 78 */ mr r5, r22 /* 800468B8 00043818 38 C0 00 20 */ li r6, 0x20 /* 800468BC 0004381C 81 83 00 00 */ lwz r12, 0(r3) /* 800468C0 00043820 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 800468C4 00043824 7D 89 03 A6 */ mtctr r12 /* 800468C8 00043828 4E 80 04 21 */ bctrl /* 800468CC 0004382C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800468D0 00043830 7E 24 8B 78 */ mr r4, r17 /* 800468D4 00043834 7E C5 B3 78 */ mr r5, r22 /* 800468D8 00043838 38 C0 00 10 */ li r6, 0x10 /* 800468DC 0004383C 81 83 00 00 */ lwz r12, 0(r3) /* 800468E0 00043840 81 8C 00 28 */ lwz r12, 0x28(r12) /* 800468E4 00043844 7D 89 03 A6 */ mtctr r12 /* 800468E8 00043848 4E 80 04 21 */ bctrl /* 800468EC 0004384C 39 CE FF FC */ addi r14, r14, -4 /* 800468F0 00043850 39 EF FF EC */ addi r15, r15, -20 /* 800468F4 00043854 3A 52 FF FF */ addi r18, r18, -1 lbl_800468F8: /* 800468F8 00043858 2C 12 00 00 */ cmpwi r18, 0 /* 800468FC 0004385C 40 80 FF 8C */ bge lbl_80046888 /* 80046900 00043860 80 70 08 DC */ lwz r3, 0x8dc(r16) /* 80046904 00043864 7F 51 D3 78 */ mr r17, r26 /* 80046908 00043868 81 C1 00 40 */ lwz r14, 0x40(r1) /* 8004690C 0004386C 3A 40 00 00 */ li r18, 0 /* 80046910 00043870 38 03 00 01 */ addi r0, r3, 1 /* 80046914 00043874 90 10 08 DC */ stw r0, 0x8dc(r16) /* 80046918 00043878 48 00 01 08 */ b lbl_80046A20 lbl_8004691C: /* 8004691C 0004387C 80 7B 00 00 */ lwz r3, 0(r27) /* 80046920 00043880 7F 33 CB 78 */ mr r19, r25 /* 80046924 00043884 81 E3 00 04 */ lwz r15, 4(r3) /* 80046928 00043888 48 00 00 44 */ b lbl_8004696C lbl_8004692C: /* 8004692C 0004388C 80 73 00 00 */ lwz r3, 0(r19) /* 80046930 00043890 80 83 00 04 */ lwz r4, 4(r3) /* 80046934 00043894 7C 04 78 00 */ cmpw r4, r15 /* 80046938 00043898 41 82 00 18 */ beq lbl_80046950 /* 8004693C 0004389C 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 80046940 000438A0 7C 04 00 00 */ cmpw r4, r0 /* 80046944 000438A4 40 82 00 24 */ bne lbl_80046968 /* 80046948 000438A8 7C 0F 70 00 */ cmpw r15, r14 /* 8004694C 000438AC 40 82 00 1C */ bne lbl_80046968 lbl_80046950: /* 80046950 000438B0 81 83 00 00 */ lwz r12, 0(r3) /* 80046954 000438B4 7E 05 83 78 */ mr r5, r16 /* 80046958 000438B8 38 81 01 B8 */ addi r4, r1, 0x1b8 /* 8004695C 000438BC 81 8C 00 24 */ lwz r12, 0x24(r12) /* 80046960 000438C0 7D 89 03 A6 */ mtctr r12 /* 80046964 000438C4 4E 80 04 21 */ bctrl lbl_80046968: /* 80046968 000438C8 3A 73 00 04 */ addi r19, r19, 4 lbl_8004696C: /* 8004696C 000438CC 80 01 02 E8 */ lwz r0, 0x2e8(r1) /* 80046970 000438D0 54 00 10 3A */ slwi r0, r0, 2 /* 80046974 000438D4 7C 19 02 14 */ add r0, r25, r0 /* 80046978 000438D8 7C 13 00 40 */ cmplw r19, r0 /* 8004697C 000438DC 40 82 FF B0 */ bne lbl_8004692C /* 80046980 000438E0 80 61 00 F8 */ lwz r3, 0xf8(r1) /* 80046984 000438E4 38 03 FF FF */ addi r0, r3, -1 /* 80046988 000438E8 7C 12 00 00 */ cmpw r18, r0 /* 8004698C 000438EC 40 82 00 40 */ bne lbl_800469CC /* 80046990 000438F0 80 70 08 84 */ lwz r3, 0x884(r16) /* 80046994 000438F4 7E 04 83 78 */ mr r4, r16 /* 80046998 000438F8 48 19 D6 C9 */ bl AddStragglersToRenderer__20CActorModelParticlesCFRC13CStateManager /* 8004699C 000438FC 7E 04 83 78 */ mr r4, r16 /* 800469A0 00043900 38 61 01 B8 */ addi r3, r1, 0x1b8 /* 800469A4 00043904 48 0D 05 21 */ bl AddToRenderer__13CDecalManagerFRC14CFrustumPlanesRC13CStateManager /* 800469A8 00043908 80 70 08 4C */ lwz r3, 0x84c(r16) /* 800469AC 0004390C 28 03 00 00 */ cmplwi r3, 0 /* 800469B0 00043910 41 82 00 1C */ beq lbl_800469CC /* 800469B4 00043914 81 83 00 00 */ lwz r12, 0(r3) /* 800469B8 00043918 7E 05 83 78 */ mr r5, r16 /* 800469BC 0004391C 38 81 01 B8 */ addi r4, r1, 0x1b8 /* 800469C0 00043920 81 8C 00 24 */ lwz r12, 0x24(r12) /* 800469C4 00043924 7D 89 03 A6 */ mtctr r12 /* 800469C8 00043928 4E 80 04 21 */ bctrl lbl_800469CC: /* 800469CC 0004392C 80 D0 08 DC */ lwz r6, 0x8dc(r16) /* 800469D0 00043930 7E 24 8B 78 */ mr r4, r17 /* 800469D4 00043934 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800469D8 00043938 7D E5 7B 78 */ mr r5, r15 /* 800469DC 0004393C 38 06 00 01 */ addi r0, r6, 1 /* 800469E0 00043940 90 10 08 DC */ stw r0, 0x8dc(r16) /* 800469E4 00043944 81 83 00 00 */ lwz r12, 0(r3) /* 800469E8 00043948 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800469EC 0004394C 7D 89 03 A6 */ mtctr r12 /* 800469F0 00043950 4E 80 04 21 */ bctrl /* 800469F4 00043954 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800469F8 00043958 7D E4 7B 78 */ mr r4, r15 /* 800469FC 0004395C 7E C5 B3 78 */ mr r5, r22 /* 80046A00 00043960 38 C0 00 10 */ li r6, 0x10 /* 80046A04 00043964 81 83 00 00 */ lwz r12, 0(r3) /* 80046A08 00043968 81 8C 00 20 */ lwz r12, 0x20(r12) /* 80046A0C 0004396C 7D 89 03 A6 */ mtctr r12 /* 80046A10 00043970 4E 80 04 21 */ bctrl /* 80046A14 00043974 3B 7B 00 04 */ addi r27, r27, 4 /* 80046A18 00043978 3A 31 00 14 */ addi r17, r17, 0x14 /* 80046A1C 0004397C 3A 52 00 01 */ addi r18, r18, 1 lbl_80046A20: /* 80046A20 00043980 80 01 00 F8 */ lwz r0, 0xf8(r1) /* 80046A24 00043984 7C 12 00 00 */ cmpw r18, r0 /* 80046A28 00043988 41 80 FE F4 */ blt lbl_8004691C /* 80046A2C 0004398C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046A30 00043990 81 83 00 00 */ lwz r12, 0(r3) /* 80046A34 00043994 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 80046A38 00043998 7D 89 03 A6 */ mtctr r12 /* 80046A3C 0004399C 4E 80 04 21 */ bctrl lbl_80046A40: /* 80046A40 000439A0 80 70 08 7C */ lwz r3, 0x87c(r16) /* 80046A44 000439A4 48 0E 8B B9 */ bl EndFrame__18CFluidPlaneManagerCFv /* 80046A48 000439A8 48 30 35 6D */ bl Black__6CColorFv /* 80046A4C 000439AC 7C 65 1B 78 */ mr r5, r3 /* 80046A50 000439B0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046A54 000439B4 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 80046A58 000439B8 38 80 00 00 */ li r4, 0 /* 80046A5C 000439BC 81 83 00 00 */ lwz r12, 0(r3) /* 80046A60 000439C0 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80046A64 000439C4 81 8C 00 E0 */ lwz r12, 0xe0(r12) /* 80046A68 000439C8 7D 89 03 A6 */ mtctr r12 /* 80046A6C 000439CC 4E 80 04 21 */ bctrl /* 80046A70 000439D0 88 02 80 E8 */ lbz r0, lbl_805A9E08@sda21(r2) /* 80046A74 000439D4 28 00 00 00 */ cmplwi r0, 0 /* 80046A78 000439D8 41 82 00 0C */ beq lbl_80046A84 /* 80046A7C 000439DC 7E 03 83 78 */ mr r3, r16 /* 80046A80 000439E0 4B FF EC 49 */ bl CacheReflection__13CStateManagerFv lbl_80046A84: /* 80046A84 000439E4 80 10 08 4C */ lwz r0, 0x84c(r16) /* 80046A88 000439E8 28 00 00 00 */ cmplwi r0, 0 /* 80046A8C 000439EC 41 82 00 24 */ beq lbl_80046AB0 /* 80046A90 000439F0 80 90 08 70 */ lwz r4, 0x870(r16) /* 80046A94 000439F4 7E 05 83 78 */ mr r5, r16 /* 80046A98 000439F8 38 61 00 4C */ addi r3, r1, 0x4c /* 80046A9C 000439FC 4B FC 3E 79 */ bl GetGlobalCameraTranslation__14CCameraManagerCFRC13CStateManager /* 80046AA0 00043A00 80 70 08 4C */ lwz r3, 0x84c(r16) /* 80046AA4 00043A04 7E 04 83 78 */ mr r4, r16 /* 80046AA8 00043A08 38 A1 00 4C */ addi r5, r1, 0x4c /* 80046AAC 00043A0C 4B FC CD D5 */ bl RenderGun__7CPlayerCFRC13CStateManagerRC9CVector3f lbl_80046AB0: /* 80046AB0 00043A10 80 18 00 00 */ lwz r0, 0(r24) /* 80046AB4 00043A14 2C 00 00 00 */ cmpwi r0, 0 /* 80046AB8 00043A18 41 82 00 84 */ beq lbl_80046B3C /* 80046ABC 00043A1C C0 22 85 C4 */ lfs f1, lbl_805AA2E4@sda21(r2) /* 80046AC0 00043A20 C0 42 85 C8 */ lfs f2, lbl_805AA2E8@sda21(r2) /* 80046AC4 00043A24 48 2C 39 1D */ bl SetDepthRange__9CGraphicsFff /* 80046AC8 00043A28 39 D8 00 04 */ addi r14, r24, 4 /* 80046ACC 00043A2C 48 00 00 4C */ b lbl_80046B18 lbl_80046AD0: /* 80046AD0 00043A30 A0 0E 00 00 */ lhz r0, 0(r14) /* 80046AD4 00043A34 7E 03 83 78 */ mr r3, r16 /* 80046AD8 00043A38 38 81 00 08 */ addi r4, r1, 8 /* 80046ADC 00043A3C B0 01 00 08 */ sth r0, 8(r1) /* 80046AE0 00043A40 48 00 5A C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80046AE4 00043A44 28 03 00 00 */ cmplwi r3, 0 /* 80046AE8 00043A48 41 82 00 2C */ beq lbl_80046B14 /* 80046AEC 00043A4C 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80046AF0 00043A50 41 82 00 10 */ beq lbl_80046B00 /* 80046AF4 00043A54 88 03 00 E6 */ lbz r0, 0xe6(r3) /* 80046AF8 00043A58 54 00 EF BD */ rlwinm. r0, r0, 0x1d, 0x1e, 0x1e /* 80046AFC 00043A5C 41 82 00 18 */ beq lbl_80046B14 lbl_80046B00: /* 80046B00 00043A60 81 83 00 00 */ lwz r12, 0(r3) /* 80046B04 00043A64 7E 04 83 78 */ mr r4, r16 /* 80046B08 00043A68 81 8C 00 28 */ lwz r12, 0x28(r12) /* 80046B0C 00043A6C 7D 89 03 A6 */ mtctr r12 /* 80046B10 00043A70 4E 80 04 21 */ bctrl lbl_80046B14: /* 80046B14 00043A74 39 CE 00 02 */ addi r14, r14, 2 lbl_80046B18: /* 80046B18 00043A78 80 18 00 00 */ lwz r0, 0(r24) /* 80046B1C 00043A7C 54 00 08 3C */ slwi r0, r0, 1 /* 80046B20 00043A80 7C 78 02 14 */ add r3, r24, r0 /* 80046B24 00043A84 38 03 00 04 */ addi r0, r3, 4 /* 80046B28 00043A88 7C 0E 00 40 */ cmplw r14, r0 /* 80046B2C 00043A8C 40 82 FF A4 */ bne lbl_80046AD0 /* 80046B30 00043A90 C0 22 85 80 */ lfs f1, lbl_805AA2A0@sda21(r2) /* 80046B34 00043A94 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80046B38 00043A98 48 2C 38 A9 */ bl SetDepthRange__9CGraphicsFff lbl_80046B3C: /* 80046B3C 00043A9C 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80046B40 00043AA0 41 82 00 44 */ beq lbl_80046B84 /* 80046B44 00043AA4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046B48 00043AA8 81 83 00 00 */ lwz r12, 0(r3) /* 80046B4C 00043AAC 81 8C 00 F4 */ lwz r12, 0xf4(r12) /* 80046B50 00043AB0 7D 89 03 A6 */ mtctr r12 /* 80046B54 00043AB4 4E 80 04 21 */ bctrl /* 80046B58 00043AB8 48 30 34 5D */ bl Black__6CColorFv /* 80046B5C 00043ABC 7C 65 1B 78 */ mr r5, r3 /* 80046B60 00043AC0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046B64 00043AC4 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 80046B68 00043AC8 38 80 00 00 */ li r4, 0 /* 80046B6C 00043ACC 81 83 00 00 */ lwz r12, 0(r3) /* 80046B70 00043AD0 81 8C 00 E8 */ lwz r12, 0xe8(r12) /* 80046B74 00043AD4 7D 89 03 A6 */ mtctr r12 /* 80046B78 00043AD8 4E 80 04 21 */ bctrl /* 80046B7C 00043ADC 38 00 00 02 */ li r0, 2 /* 80046B80 00043AE0 90 10 0F 34 */ stw r0, 0xf34(r16) lbl_80046B84: /* 80046B84 00043AE4 7E 03 83 78 */ mr r3, r16 /* 80046B88 00043AE8 4B FF F0 19 */ bl DrawDebugStuff__13CStateManagerCFv /* 80046B8C 00043AEC 7E 03 83 78 */ mr r3, r16 /* 80046B90 00043AF0 4B FF F0 15 */ bl RenderCamerasAndAreaLights__13CStateManagerCFv /* 80046B94 00043AF4 7E 03 83 78 */ mr r3, r16 /* 80046B98 00043AF8 38 81 00 B0 */ addi r4, r1, 0xb0 /* 80046B9C 00043AFC 38 A1 01 24 */ addi r5, r1, 0x124 /* 80046BA0 00043B00 4B FF F2 7D */ bl ResetViewAfterDraw__13CStateManagerCFRCQ29CGraphics9CViewportRC12CTransform4f /* 80046BA4 00043B04 7E 03 83 78 */ mr r3, r16 /* 80046BA8 00043B08 4B FF F0 59 */ bl DrawE3DeathEffect__13CStateManagerCFv /* 80046BAC 00043B0C 7E 03 83 78 */ mr r3, r16 /* 80046BB0 00043B10 4B FF F1 B5 */ bl DrawAdditionalFilters__13CStateManagerCFv /* 80046BB4 00043B14 80 A1 02 E8 */ lwz r5, 0x2e8(r1) /* 80046BB8 00043B18 38 60 00 00 */ li r3, 0 /* 80046BBC 00043B1C 2C 05 00 00 */ cmpwi r5, 0 /* 80046BC0 00043B20 40 81 00 40 */ ble lbl_80046C00 /* 80046BC4 00043B24 2C 05 00 08 */ cmpwi r5, 8 /* 80046BC8 00043B28 38 85 FF F8 */ addi r4, r5, -8 /* 80046BCC 00043B2C 40 81 00 20 */ ble lbl_80046BEC /* 80046BD0 00043B30 38 04 00 07 */ addi r0, r4, 7 /* 80046BD4 00043B34 54 00 E8 FE */ srwi r0, r0, 3 /* 80046BD8 00043B38 7C 09 03 A6 */ mtctr r0 /* 80046BDC 00043B3C 2C 04 00 00 */ cmpwi r4, 0 /* 80046BE0 00043B40 40 81 00 0C */ ble lbl_80046BEC lbl_80046BE4: /* 80046BE4 00043B44 38 63 00 08 */ addi r3, r3, 8 /* 80046BE8 00043B48 42 00 FF FC */ bdnz lbl_80046BE4 lbl_80046BEC: /* 80046BEC 00043B4C 7C 03 28 50 */ subf r0, r3, r5 /* 80046BF0 00043B50 7C 09 03 A6 */ mtctr r0 /* 80046BF4 00043B54 7C 03 28 00 */ cmpw r3, r5 /* 80046BF8 00043B58 40 80 00 08 */ bge lbl_80046C00 lbl_80046BFC: /* 80046BFC 00043B5C 42 00 00 00 */ bdnz lbl_80046BFC lbl_80046C00: /* 80046C00 00043B60 39 C0 00 00 */ li r14, 0 /* 80046C04 00043B64 91 C1 02 E8 */ stw r14, 0x2e8(r1) /* 80046C08 00043B68 48 00 00 30 */ b lbl_80046C38 lbl_80046C0C: /* 80046C0C 00043B6C 28 1A 00 00 */ cmplwi r26, 0 /* 80046C10 00043B70 41 82 00 20 */ beq lbl_80046C30 /* 80046C14 00043B74 34 1A 00 0C */ addic. r0, r26, 0xc /* 80046C18 00043B78 41 82 00 18 */ beq lbl_80046C30 /* 80046C1C 00043B7C 88 1A 00 0C */ lbz r0, 0xc(r26) /* 80046C20 00043B80 28 00 00 00 */ cmplwi r0, 0 /* 80046C24 00043B84 41 82 00 0C */ beq lbl_80046C30 /* 80046C28 00043B88 80 7A 00 10 */ lwz r3, 0x10(r26) /* 80046C2C 00043B8C 48 2C ED 05 */ bl Free__7CMemoryFPCv lbl_80046C30: /* 80046C30 00043B90 3B 5A 00 14 */ addi r26, r26, 0x14 /* 80046C34 00043B94 39 CE 00 01 */ addi r14, r14, 1 lbl_80046C38: /* 80046C38 00043B98 80 01 02 1C */ lwz r0, 0x21c(r1) /* 80046C3C 00043B9C 7C 0E 00 00 */ cmpw r14, r0 /* 80046C40 00043BA0 41 80 FF CC */ blt lbl_80046C0C /* 80046C44 00043BA4 80 A1 00 F8 */ lwz r5, 0xf8(r1) /* 80046C48 00043BA8 38 60 00 00 */ li r3, 0 /* 80046C4C 00043BAC 90 61 02 1C */ stw r3, 0x21c(r1) /* 80046C50 00043BB0 2C 05 00 00 */ cmpwi r5, 0 /* 80046C54 00043BB4 40 81 00 40 */ ble lbl_80046C94 /* 80046C58 00043BB8 2C 05 00 08 */ cmpwi r5, 8 /* 80046C5C 00043BBC 38 85 FF F8 */ addi r4, r5, -8 /* 80046C60 00043BC0 40 81 00 20 */ ble lbl_80046C80 /* 80046C64 00043BC4 38 04 00 07 */ addi r0, r4, 7 /* 80046C68 00043BC8 54 00 E8 FE */ srwi r0, r0, 3 /* 80046C6C 00043BCC 7C 09 03 A6 */ mtctr r0 /* 80046C70 00043BD0 2C 04 00 00 */ cmpwi r4, 0 /* 80046C74 00043BD4 40 81 00 0C */ ble lbl_80046C80 lbl_80046C78: /* 80046C78 00043BD8 38 63 00 08 */ addi r3, r3, 8 /* 80046C7C 00043BDC 42 00 FF FC */ bdnz lbl_80046C78 lbl_80046C80: /* 80046C80 00043BE0 7C 03 28 50 */ subf r0, r3, r5 /* 80046C84 00043BE4 7C 09 03 A6 */ mtctr r0 /* 80046C88 00043BE8 7C 03 28 00 */ cmpw r3, r5 /* 80046C8C 00043BEC 40 80 00 08 */ bge lbl_80046C94 lbl_80046C90: /* 80046C90 00043BF0 42 00 00 00 */ bdnz lbl_80046C90 lbl_80046C94: /* 80046C94 00043BF4 80 A1 01 B8 */ lwz r5, 0x1b8(r1) /* 80046C98 00043BF8 38 60 00 00 */ li r3, 0 /* 80046C9C 00043BFC 90 61 00 F8 */ stw r3, 0xf8(r1) /* 80046CA0 00043C00 2C 05 00 00 */ cmpwi r5, 0 /* 80046CA4 00043C04 40 81 00 40 */ ble lbl_80046CE4 /* 80046CA8 00043C08 2C 05 00 08 */ cmpwi r5, 8 /* 80046CAC 00043C0C 38 85 FF F8 */ addi r4, r5, -8 /* 80046CB0 00043C10 40 81 00 20 */ ble lbl_80046CD0 /* 80046CB4 00043C14 38 04 00 07 */ addi r0, r4, 7 /* 80046CB8 00043C18 54 00 E8 FE */ srwi r0, r0, 3 /* 80046CBC 00043C1C 7C 09 03 A6 */ mtctr r0 /* 80046CC0 00043C20 2C 04 00 00 */ cmpwi r4, 0 /* 80046CC4 00043C24 40 81 00 0C */ ble lbl_80046CD0 lbl_80046CC8: /* 80046CC8 00043C28 38 63 00 08 */ addi r3, r3, 8 /* 80046CCC 00043C2C 42 00 FF FC */ bdnz lbl_80046CC8 lbl_80046CD0: /* 80046CD0 00043C30 7C 03 28 50 */ subf r0, r3, r5 /* 80046CD4 00043C34 7C 09 03 A6 */ mtctr r0 /* 80046CD8 00043C38 7C 03 28 00 */ cmpw r3, r5 /* 80046CDC 00043C3C 40 80 00 08 */ bge lbl_80046CE4 lbl_80046CE0: /* 80046CE0 00043C40 42 00 00 00 */ bdnz lbl_80046CE0 lbl_80046CE4: /* 80046CE4 00043C44 38 00 00 00 */ li r0, 0 /* 80046CE8 00043C48 38 61 00 90 */ addi r3, r1, 0x90 /* 80046CEC 00043C4C 90 01 01 B8 */ stw r0, 0x1b8(r1) /* 80046CF0 00043C50 38 80 FF FF */ li r4, -1 /* 80046CF4 00043C54 48 31 15 69 */ bl __dt__13CTimeProviderFv /* 80046CF8 00043C58 B9 C1 12 F8 */ lmw r14, 0x12f8(r1) /* 80046CFC 00043C5C 80 01 13 44 */ lwz r0, 0x1344(r1) /* 80046D00 00043C60 7C 08 03 A6 */ mtlr r0 /* 80046D04 00043C64 38 21 13 40 */ addi r1, r1, 0x1340 /* 80046D08 00043C68 4E 80 00 20 */ blr .global GetAliveAreasEnd__6CWorldFv GetAliveAreasEnd__6CWorldFv: /* 80046D0C 00043C6C 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) /* 80046D10 00043C70 90 03 00 00 */ stw r0, 0(r3) /* 80046D14 00043C74 4E 80 00 20 */ blr .global sub_80046d18 sub_80046d18: /* 80046D18 00043C78 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80046D1C 00043C7C 7C 08 02 A6 */ mflr r0 /* 80046D20 00043C80 90 01 00 24 */ stw r0, 0x24(r1) /* 80046D24 00043C84 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 80046D28 00043C88 80 A4 00 00 */ lwz r5, 0(r4) /* 80046D2C 00043C8C 7C 05 00 00 */ cmpw r5, r0 /* 80046D30 00043C90 40 82 00 10 */ bne lbl_80046D40 /* 80046D34 00043C94 80 03 08 CC */ lwz r0, 0x8cc(r3) /* 80046D38 00043C98 38 81 00 0C */ addi r4, r1, 0xc /* 80046D3C 00043C9C 90 01 00 0C */ stw r0, 0xc(r1) lbl_80046D40: /* 80046D40 00043CA0 80 C4 00 00 */ lwz r6, 0(r4) /* 80046D44 00043CA4 80 A3 08 50 */ lwz r5, 0x850(r3) /* 80046D48 00043CA8 54 C4 18 38 */ slwi r4, r6, 3 /* 80046D4C 00043CAC 90 C1 00 10 */ stw r6, 0x10(r1) /* 80046D50 00043CB0 80 A5 00 20 */ lwz r5, 0x20(r5) /* 80046D54 00043CB4 38 04 00 04 */ addi r0, r4, 4 /* 80046D58 00043CB8 90 C1 00 08 */ stw r6, 8(r1) /* 80046D5C 00043CBC 7C 85 00 2E */ lwzx r4, r5, r0 /* 80046D60 00043CC0 88 04 00 F0 */ lbz r0, 0xf0(r4) /* 80046D64 00043CC4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80046D68 00043CC8 41 82 00 08 */ beq lbl_80046D70 /* 80046D6C 00043CCC 48 00 00 7D */ bl sub_80046de8 lbl_80046D70: /* 80046D70 00043CD0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80046D74 00043CD4 7C 08 03 A6 */ mtlr r0 /* 80046D78 00043CD8 38 21 00 20 */ addi r1, r1, 0x20 /* 80046D7C 00043CDC 4E 80 00 20 */ blr .global SetupFogForArea__13CStateManagerCF7TAreaId SetupFogForArea__13CStateManagerCF7TAreaId: /* 80046D80 00043CE0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80046D84 00043CE4 7C 08 02 A6 */ mflr r0 /* 80046D88 00043CE8 90 01 00 24 */ stw r0, 0x24(r1) /* 80046D8C 00043CEC 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 80046D90 00043CF0 80 A4 00 00 */ lwz r5, 0(r4) /* 80046D94 00043CF4 7C 05 00 00 */ cmpw r5, r0 /* 80046D98 00043CF8 40 82 00 10 */ bne lbl_80046DA8 /* 80046D9C 00043CFC 80 03 08 CC */ lwz r0, 0x8cc(r3) /* 80046DA0 00043D00 38 81 00 0C */ addi r4, r1, 0xc /* 80046DA4 00043D04 90 01 00 0C */ stw r0, 0xc(r1) lbl_80046DA8: /* 80046DA8 00043D08 80 C4 00 00 */ lwz r6, 0(r4) /* 80046DAC 00043D0C 80 A3 08 50 */ lwz r5, 0x850(r3) /* 80046DB0 00043D10 54 C4 18 38 */ slwi r4, r6, 3 /* 80046DB4 00043D14 90 C1 00 10 */ stw r6, 0x10(r1) /* 80046DB8 00043D18 80 A5 00 20 */ lwz r5, 0x20(r5) /* 80046DBC 00043D1C 38 04 00 04 */ addi r0, r4, 4 /* 80046DC0 00043D20 90 C1 00 08 */ stw r6, 8(r1) /* 80046DC4 00043D24 7C 85 00 2E */ lwzx r4, r5, r0 /* 80046DC8 00043D28 88 04 00 F0 */ lbz r0, 0xf0(r4) /* 80046DCC 00043D2C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80046DD0 00043D30 41 82 00 08 */ beq lbl_80046DD8 /* 80046DD4 00043D34 48 00 00 9D */ bl SetupFogForArea__13CStateManagerCFRC9CGameArea lbl_80046DD8: /* 80046DD8 00043D38 80 01 00 24 */ lwz r0, 0x24(r1) /* 80046DDC 00043D3C 7C 08 03 A6 */ mtlr r0 /* 80046DE0 00043D40 38 21 00 20 */ addi r1, r1, 0x20 /* 80046DE4 00043D44 4E 80 00 20 */ blr .global sub_80046de8 sub_80046de8: /* 80046DE8 00043D48 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80046DEC 00043D4C 7C 08 02 A6 */ mflr r0 /* 80046DF0 00043D50 90 01 00 14 */ stw r0, 0x14(r1) /* 80046DF4 00043D54 93 E1 00 0C */ stw r31, 0xc(r1) /* 80046DF8 00043D58 7C 9F 23 78 */ mr r31, r4 /* 80046DFC 00043D5C 7C 64 1B 78 */ mr r4, r3 /* 80046E00 00043D60 80 A3 08 B8 */ lwz r5, 0x8b8(r3) /* 80046E04 00043D64 80 65 00 00 */ lwz r3, 0(r5) /* 80046E08 00043D68 48 04 A7 51 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80046E0C 00043D6C 2C 03 00 01 */ cmpwi r3, 1 /* 80046E10 00043D70 40 82 00 4C */ bne lbl_80046E5C /* 80046E14 00043D74 7F E3 FB 78 */ mr r3, r31 /* 80046E18 00043D78 48 01 74 25 */ bl GetXRayFogDistance__9CGameAreaFv /* 80046E1C 00043D7C 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) /* 80046E20 00043D80 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80046E24 00043D84 C0 04 02 84 */ lfs f0, 0x284(r4) /* 80046E28 00043D88 38 A4 02 88 */ addi r5, r4, 0x288 /* 80046E2C 00043D8C EC 62 08 28 */ fsubs f3, f2, f1 /* 80046E30 00043D90 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046E34 00043D94 EC 40 00 72 */ fmuls f2, f0, f1 /* 80046E38 00043D98 C0 24 02 80 */ lfs f1, 0x280(r4) /* 80046E3C 00043D9C 81 83 00 00 */ lwz r12, 0(r3) /* 80046E40 00043DA0 C0 02 85 CC */ lfs f0, lbl_805AA2EC@sda21(r2) /* 80046E44 00043DA4 EC 41 10 FA */ fmadds f2, f1, f3, f2 /* 80046E48 00043DA8 81 8C 00 E0 */ lwz r12, 0xe0(r12) /* 80046E4C 00043DAC 80 84 02 7C */ lwz r4, 0x27c(r4) /* 80046E50 00043DB0 EC 42 00 32 */ fmuls f2, f2, f0 /* 80046E54 00043DB4 7D 89 03 A6 */ mtctr r12 /* 80046E58 00043DB8 4E 80 04 21 */ bctrl lbl_80046E5C: /* 80046E5C 00043DBC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80046E60 00043DC0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80046E64 00043DC4 7C 08 03 A6 */ mtlr r0 /* 80046E68 00043DC8 38 21 00 10 */ addi r1, r1, 0x10 /* 80046E6C 00043DCC 4E 80 00 20 */ blr .global SetupFogForArea__13CStateManagerCFRC9CGameArea SetupFogForArea__13CStateManagerCFRC9CGameArea: /* 80046E70 00043DD0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80046E74 00043DD4 7C 08 02 A6 */ mflr r0 /* 80046E78 00043DD8 90 01 00 14 */ stw r0, 0x14(r1) /* 80046E7C 00043DDC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80046E80 00043DE0 7C 9F 23 78 */ mr r31, r4 /* 80046E84 00043DE4 93 C1 00 08 */ stw r30, 8(r1) /* 80046E88 00043DE8 7C 7E 1B 78 */ mr r30, r3 /* 80046E8C 00043DEC 48 00 00 91 */ bl SetupFogForDraw__13CStateManagerCFv /* 80046E90 00043DF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80046E94 00043DF4 40 82 00 70 */ bne lbl_80046F04 /* 80046E98 00043DF8 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 80046E9C 00043DFC 7F C4 F3 78 */ mr r4, r30 /* 80046EA0 00043E00 80 63 00 00 */ lwz r3, 0(r3) /* 80046EA4 00043E04 48 04 A6 B5 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80046EA8 00043E08 2C 03 00 01 */ cmpwi r3, 1 /* 80046EAC 00043E0C 40 82 00 4C */ bne lbl_80046EF8 /* 80046EB0 00043E10 7F E3 FB 78 */ mr r3, r31 /* 80046EB4 00043E14 48 01 73 89 */ bl GetXRayFogDistance__9CGameAreaFv /* 80046EB8 00043E18 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) /* 80046EBC 00043E1C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046EC0 00043E20 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80046EC4 00043E24 38 A4 02 88 */ addi r5, r4, 0x288 /* 80046EC8 00043E28 C0 04 02 84 */ lfs f0, 0x284(r4) /* 80046ECC 00043E2C 81 83 00 00 */ lwz r12, 0(r3) /* 80046ED0 00043E30 EC 42 08 28 */ fsubs f2, f2, f1 /* 80046ED4 00043E34 C0 64 02 80 */ lfs f3, 0x280(r4) /* 80046ED8 00043E38 EC 00 00 72 */ fmuls f0, f0, f1 /* 80046EDC 00043E3C 81 8C 00 E0 */ lwz r12, 0xe0(r12) /* 80046EE0 00043E40 FC 20 18 90 */ fmr f1, f3 /* 80046EE4 00043E44 80 84 02 7C */ lwz r4, 0x27c(r4) /* 80046EE8 00043E48 EC 43 00 BA */ fmadds f2, f3, f2, f0 /* 80046EEC 00043E4C 7D 89 03 A6 */ mtctr r12 /* 80046EF0 00043E50 4E 80 04 21 */ bctrl /* 80046EF4 00043E54 48 00 00 10 */ b lbl_80046F04 lbl_80046EF8: /* 80046EF8 00043E58 80 7F 01 2C */ lwz r3, 0x12c(r31) /* 80046EFC 00043E5C 80 63 10 C4 */ lwz r3, 0x10c4(r3) /* 80046F00 00043E60 48 01 7D 69 */ bl SetCurrent__Q29CGameArea8CAreaFogCFv lbl_80046F04: /* 80046F04 00043E64 80 01 00 14 */ lwz r0, 0x14(r1) /* 80046F08 00043E68 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80046F0C 00043E6C 83 C1 00 08 */ lwz r30, 8(r1) /* 80046F10 00043E70 7C 08 03 A6 */ mtlr r0 /* 80046F14 00043E74 38 21 00 10 */ addi r1, r1, 0x10 /* 80046F18 00043E78 4E 80 00 20 */ blr .global SetupFogForDraw__13CStateManagerCFv SetupFogForDraw__13CStateManagerCFv: /* 80046F1C 00043E7C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80046F20 00043E80 7C 08 02 A6 */ mflr r0 /* 80046F24 00043E84 90 01 00 14 */ stw r0, 0x14(r1) /* 80046F28 00043E88 93 E1 00 0C */ stw r31, 0xc(r1) /* 80046F2C 00043E8C 7C 7F 1B 78 */ mr r31, r3 /* 80046F30 00043E90 7F E4 FB 78 */ mr r4, r31 /* 80046F34 00043E94 80 63 08 B8 */ lwz r3, 0x8b8(r3) /* 80046F38 00043E98 80 63 00 00 */ lwz r3, 0(r3) /* 80046F3C 00043E9C 48 04 A6 1D */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80046F40 00043EA0 2C 03 00 02 */ cmpwi r3, 2 /* 80046F44 00043EA4 41 82 00 60 */ beq lbl_80046FA4 /* 80046F48 00043EA8 40 80 00 14 */ bge lbl_80046F5C /* 80046F4C 00043EAC 2C 03 00 00 */ cmpwi r3, 0 /* 80046F50 00043EB0 41 82 00 54 */ beq lbl_80046FA4 /* 80046F54 00043EB4 40 80 00 40 */ bge lbl_80046F94 /* 80046F58 00043EB8 48 00 00 44 */ b lbl_80046F9C lbl_80046F5C: /* 80046F5C 00043EBC 2C 03 00 04 */ cmpwi r3, 4 /* 80046F60 00043EC0 40 80 00 3C */ bge lbl_80046F9C /* 80046F64 00043EC4 48 30 30 51 */ bl Black__6CColorFv /* 80046F68 00043EC8 7C 65 1B 78 */ mr r5, r3 /* 80046F6C 00043ECC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80046F70 00043ED0 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 80046F74 00043ED4 38 80 00 00 */ li r4, 0 /* 80046F78 00043ED8 81 83 00 00 */ lwz r12, 0(r3) /* 80046F7C 00043EDC C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80046F80 00043EE0 81 8C 00 E0 */ lwz r12, 0xe0(r12) /* 80046F84 00043EE4 7D 89 03 A6 */ mtctr r12 /* 80046F88 00043EE8 4E 80 04 21 */ bctrl /* 80046F8C 00043EEC 38 60 00 01 */ li r3, 1 /* 80046F90 00043EF0 48 00 00 40 */ b lbl_80046FD0 lbl_80046F94: /* 80046F94 00043EF4 38 60 00 00 */ li r3, 0 /* 80046F98 00043EF8 48 00 00 38 */ b lbl_80046FD0 lbl_80046F9C: /* 80046F9C 00043EFC 38 60 00 00 */ li r3, 0 /* 80046FA0 00043F00 48 00 00 30 */ b lbl_80046FD0 lbl_80046FA4: /* 80046FA4 00043F04 80 7F 08 70 */ lwz r3, 0x870(r31) /* 80046FA8 00043F08 3B E3 00 3C */ addi r31, r3, 0x3c /* 80046FAC 00043F0C 7F E3 FB 78 */ mr r3, r31 /* 80046FB0 00043F10 48 01 81 D9 */ bl IsFogDisabled__Q29CGameArea8CAreaFogCFv /* 80046FB4 00043F14 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80046FB8 00043F18 41 82 00 0C */ beq lbl_80046FC4 /* 80046FBC 00043F1C 38 60 00 00 */ li r3, 0 /* 80046FC0 00043F20 48 00 00 10 */ b lbl_80046FD0 lbl_80046FC4: /* 80046FC4 00043F24 7F E3 FB 78 */ mr r3, r31 /* 80046FC8 00043F28 48 01 7C A1 */ bl SetCurrent__Q29CGameArea8CAreaFogCFv /* 80046FCC 00043F2C 38 60 00 01 */ li r3, 1 lbl_80046FD0: /* 80046FD0 00043F30 80 01 00 14 */ lwz r0, 0x14(r1) /* 80046FD4 00043F34 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80046FD8 00043F38 7C 08 03 A6 */ mtlr r0 /* 80046FDC 00043F3C 38 21 00 10 */ addi r1, r1, 0x10 /* 80046FE0 00043F40 4E 80 00 20 */ blr .global SetupViewForDraw__13CStateManagerCFRCQ29CGraphics9CViewport SetupViewForDraw__13CStateManagerCFRCQ29CGraphics9CViewport: /* 80046FE4 00043F44 94 21 FE A0 */ stwu r1, -0x160(r1) /* 80046FE8 00043F48 7C 08 02 A6 */ mflr r0 /* 80046FEC 00043F4C 90 01 01 64 */ stw r0, 0x164(r1) /* 80046FF0 00043F50 DB E1 01 50 */ stfd f31, 0x150(r1) /* 80046FF4 00043F54 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 /* 80046FF8 00043F58 DB C1 01 40 */ stfd f30, 0x140(r1) /* 80046FFC 00043F5C F3 C1 01 48 */ psq_st f30, 328(r1), 0, qr0 /* 80047000 00043F60 DB A1 01 30 */ stfd f29, 0x130(r1) /* 80047004 00043F64 F3 A1 01 38 */ psq_st f29, 312(r1), 0, qr0 /* 80047008 00043F68 DB 81 01 20 */ stfd f28, 0x120(r1) /* 8004700C 00043F6C F3 81 01 28 */ psq_st f28, 296(r1), 0, qr0 /* 80047010 00043F70 BF 21 01 04 */ stmw r25, 0x104(r1) /* 80047014 00043F74 7C 9E 23 78 */ mr r30, r4 /* 80047018 00043F78 7C 7D 1B 78 */ mr r29, r3 /* 8004701C 00043F7C 80 64 08 70 */ lwz r3, 0x870(r4) /* 80047020 00043F80 7C B9 2B 78 */ mr r25, r5 /* 80047024 00043F84 4B FC 4A F5 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 80047028 00043F88 80 9E 08 70 */ lwz r4, 0x870(r30) /* 8004702C 00043F8C 7C 7F 1B 78 */ mr r31, r3 /* 80047030 00043F90 7F C5 F3 78 */ mr r5, r30 /* 80047034 00043F94 38 61 00 14 */ addi r3, r1, 0x14 /* 80047038 00043F98 4B FC 39 31 */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager /* 8004703C 00043F9C 38 61 00 44 */ addi r3, r1, 0x44 /* 80047040 00043FA0 38 81 00 14 */ addi r4, r1, 0x14 /* 80047044 00043FA4 48 2C BB 31 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80047048 00043FA8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 8004704C 00043FAC 38 81 00 44 */ addi r4, r1, 0x44 /* 80047050 00043FB0 81 83 00 00 */ lwz r12, 0(r3) /* 80047054 00043FB4 81 8C 00 48 */ lwz r12, 0x48(r12) /* 80047058 00043FB8 7D 89 03 A6 */ mtctr r12 /* 8004705C 00043FBC 4E 80 04 21 */ bctrl /* 80047060 00043FC0 80 7E 08 4C */ lwz r3, 0x84c(r30) /* 80047064 00043FC4 C0 43 00 60 */ lfs f2, 0x60(r3) /* 80047068 00043FC8 C0 23 00 50 */ lfs f1, 0x50(r3) /* 8004706C 00043FCC C0 03 00 40 */ lfs f0, 0x40(r3) /* 80047070 00043FD0 D0 01 00 08 */ stfs f0, 8(r1) /* 80047074 00043FD4 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80047078 00043FD8 D0 41 00 10 */ stfs f2, 0x10(r1) /* 8004707C 00043FDC 48 28 F1 E9 */ bl GetGlobalTimerObj__10CStopwatchFv /* 80047080 00043FE0 7C 64 1B 78 */ mr r4, r3 /* 80047084 00043FE4 38 61 00 08 */ addi r3, r1, 8 /* 80047088 00043FE8 48 2F E7 71 */ bl SetNewPlayerPositionAndTime__10CCubeModelFRC9CVector3fRC10CStopwatch /* 8004708C 00043FEC 80 D9 00 0C */ lwz r6, 0xc(r25) /* 80047090 00043FF0 3C 60 43 30 */ lis r3, 0x4330 /* 80047094 00043FF4 80 B9 00 08 */ lwz r5, 8(r25) /* 80047098 00043FF8 6C C0 80 00 */ xoris r0, r6, 0x8000 /* 8004709C 00043FFC 90 61 00 E0 */ stw r3, 0xe0(r1) /* 800470A0 00044000 6C A4 80 00 */ xoris r4, r5, 0x8000 /* 800470A4 00044004 C8 A2 85 A8 */ lfd f5, lbl_805AA2C8@sda21(r2) /* 800470A8 00044008 90 01 00 E4 */ stw r0, 0xe4(r1) /* 800470AC 0004400C C0 DE 0F 2C */ lfs f6, 0xf2c(r30) /* 800470B0 00044010 C8 21 00 E0 */ lfd f1, 0xe0(r1) /* 800470B4 00044014 C0 1F 01 68 */ lfs f0, 0x168(r31) /* 800470B8 00044018 90 81 00 DC */ stw r4, 0xdc(r1) /* 800470BC 0004401C EC 21 28 28 */ fsubs f1, f1, f5 /* 800470C0 00044020 C0 5E 0F 30 */ lfs f2, 0xf30(r30) /* 800470C4 00044024 EC 06 00 32 */ fmuls f0, f6, f0 /* 800470C8 00044028 90 61 00 D8 */ stw r3, 0xd8(r1) /* 800470CC 0004402C EF E2 00 72 */ fmuls f31, f2, f1 /* 800470D0 00044030 C0 22 85 7C */ lfs f1, lbl_805AA29C@sda21(r2) /* 800470D4 00044034 C8 81 00 D8 */ lfd f4, 0xd8(r1) /* 800470D8 00044038 EF C0 10 24 */ fdivs f30, f0, f2 /* 800470DC 0004403C C0 1F 01 5C */ lfs f0, 0x15c(r31) /* 800470E0 00044040 C0 42 85 D4 */ lfs f2, lbl_805AA2F4@sda21(r2) /* 800470E4 00044044 C0 62 85 D0 */ lfs f3, lbl_805AA2F0@sda21(r2) /* 800470E8 00044048 80 F9 00 00 */ lwz r7, 0(r25) /* 800470EC 0004404C 80 99 00 04 */ lwz r4, 4(r25) /* 800470F0 00044050 EC A4 28 28 */ fsubs f5, f4, f5 /* 800470F4 00044054 FC 80 F8 1E */ fctiwz f4, f31 /* 800470F8 00044058 EC 01 00 32 */ fmuls f0, f1, f0 /* 800470FC 0004405C EF A6 01 72 */ fmuls f29, f6, f5 /* 80047100 00044060 D8 81 00 F0 */ stfd f4, 0xf0(r1) /* 80047104 00044064 EC 02 00 32 */ fmuls f0, f2, f0 /* 80047108 00044068 FC 40 E8 1E */ fctiwz f2, f29 /* 8004710C 0004406C 80 61 00 F4 */ lwz r3, 0xf4(r1) /* 80047110 00044070 54 60 0F FE */ srwi r0, r3, 0x1f /* 80047114 00044074 EC 23 00 32 */ fmuls f1, f3, f0 /* 80047118 00044078 D8 41 00 E8 */ stfd f2, 0xe8(r1) /* 8004711C 0004407C 7C 00 1A 14 */ add r0, r0, r3 /* 80047120 00044080 7C 00 0E 70 */ srawi r0, r0, 1 /* 80047124 00044084 83 81 00 EC */ lwz r28, 0xec(r1) /* 80047128 00044088 54 1B 08 3C */ slwi r27, r0, 1 /* 8004712C 0004408C 7C 7B 30 50 */ subf r3, r27, r6 /* 80047130 00044090 7C DC 28 50 */ subf r6, r28, r5 /* 80047134 00044094 54 C5 0F FE */ srwi r5, r6, 0x1f /* 80047138 00044098 54 60 0F FE */ srwi r0, r3, 0x1f /* 8004713C 0004409C 7C A5 32 14 */ add r5, r5, r6 /* 80047140 000440A0 7C A5 0E 70 */ srawi r5, r5, 1 /* 80047144 000440A4 7C 00 1A 14 */ add r0, r0, r3 /* 80047148 000440A8 7C 00 0E 70 */ srawi r0, r0, 1 /* 8004714C 000440AC 7F 47 2A 14 */ add r26, r7, r5 /* 80047150 000440B0 7F 24 02 14 */ add r25, r4, r0 /* 80047154 000440B4 48 2C E1 6D */ bl SlowTangentR__5CMathFf /* 80047158 000440B8 C0 1E 0F 30 */ lfs f0, 0xf30(r30) /* 8004715C 000440BC EC 21 00 32 */ fmuls f1, f1, f0 /* 80047160 000440C0 48 2C E2 0D */ bl ArcTangentR__5CMathFf /* 80047164 000440C4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80047168 000440C8 7F 44 D3 78 */ mr r4, r26 /* 8004716C 000440CC C0 02 85 74 */ lfs f0, lbl_805AA294@sda21(r2) /* 80047170 000440D0 7F 25 CB 78 */ mr r5, r25 /* 80047174 000440D4 81 83 00 00 */ lwz r12, 0(r3) /* 80047178 000440D8 7F 86 E3 78 */ mr r6, r28 /* 8004717C 000440DC EF 80 00 72 */ fmuls f28, f0, f1 /* 80047180 000440E0 7F 67 DB 78 */ mr r7, r27 /* 80047184 000440E4 81 8C 00 5C */ lwz r12, 0x5c(r12) /* 80047188 000440E8 7D 89 03 A6 */ mtctr r12 /* 8004718C 000440EC 4E 80 04 21 */ bctrl /* 80047190 000440F0 C0 22 85 80 */ lfs f1, lbl_805AA2A0@sda21(r2) /* 80047194 000440F4 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80047198 000440F8 48 2C 32 49 */ bl SetDepthRange__9CGraphicsFff /* 8004719C 000440FC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800471A0 00044100 FC 40 E8 90 */ fmr f2, f29 /* 800471A4 00044104 C0 02 85 DC */ lfs f0, lbl_805AA2FC@sda21(r2) /* 800471A8 00044108 FC 60 F8 90 */ fmr f3, f31 /* 800471AC 0004410C 81 83 00 00 */ lwz r12, 0(r3) /* 800471B0 00044110 EC 00 07 32 */ fmuls f0, f0, f28 /* 800471B4 00044114 C0 22 85 D8 */ lfs f1, lbl_805AA2F8@sda21(r2) /* 800471B8 00044118 81 8C 00 4C */ lwz r12, 0x4c(r12) /* 800471BC 0004411C C0 9F 01 60 */ lfs f4, 0x160(r31) /* 800471C0 00044120 EC 21 00 32 */ fmuls f1, f1, f0 /* 800471C4 00044124 C0 BF 01 64 */ lfs f5, 0x164(r31) /* 800471C8 00044128 7D 89 03 A6 */ mtctr r12 /* 800471CC 0004412C 4E 80 04 21 */ bctrl /* 800471D0 00044130 FC 20 E0 90 */ fmr f1, f28 /* 800471D4 00044134 C0 7F 01 60 */ lfs f3, 0x160(r31) /* 800471D8 00044138 FC 40 F0 90 */ fmr f2, f30 /* 800471DC 0004413C C0 82 85 C0 */ lfs f4, lbl_805AA2E0@sda21(r2) /* 800471E0 00044140 38 61 00 74 */ addi r3, r1, 0x74 /* 800471E4 00044144 38 81 00 44 */ addi r4, r1, 0x44 /* 800471E8 00044148 38 A0 00 00 */ li r5, 0 /* 800471EC 0004414C 48 2F E0 69 */ bl __ct__14CFrustumPlanesFRC12CTransform4ffffbf /* 800471F0 00044150 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 800471F4 00044154 38 81 00 74 */ addi r4, r1, 0x74 /* 800471F8 00044158 81 83 00 00 */ lwz r12, 0(r3) /* 800471FC 0004415C 81 8C 00 58 */ lwz r12, 0x58(r12) /* 80047200 00044160 7D 89 03 A6 */ mtctr r12 /* 80047204 00044164 4E 80 04 21 */ bctrl /* 80047208 00044168 48 30 2D A5 */ bl White__6CColorFv /* 8004720C 0004416C 7C 64 1B 78 */ mr r4, r3 /* 80047210 00044170 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80047214 00044174 81 83 00 00 */ lwz r12, 0(r3) /* 80047218 00044178 81 8C 00 B4 */ lwz r12, 0xb4(r12) /* 8004721C 0004417C 7D 89 03 A6 */ mtctr r12 /* 80047220 00044180 4E 80 04 21 */ bctrl /* 80047224 00044184 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80047228 00044188 3C 80 80 5A */ lis r4, skIdentity4f@ha /* 8004722C 0004418C 38 84 66 70 */ addi r4, r4, skIdentity4f@l /* 80047230 00044190 81 83 00 00 */ lwz r12, 0(r3) /* 80047234 00044194 81 8C 00 30 */ lwz r12, 0x30(r12) /* 80047238 00044198 7D 89 03 A6 */ mtctr r12 /* 8004723C 0004419C 4E 80 04 21 */ bctrl /* 80047240 000441A0 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 80047244 000441A4 38 80 00 00 */ li r4, 0 /* 80047248 000441A8 48 0E 83 C1 */ bl StartFrame__18CFluidPlaneManagerCFb /* 8004724C 000441AC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80047250 000441B0 38 80 00 01 */ li r4, 1 /* 80047254 000441B4 38 A0 00 01 */ li r5, 1 /* 80047258 000441B8 81 83 00 00 */ lwz r12, 0(r3) /* 8004725C 000441BC 81 8C 00 84 */ lwz r12, 0x84(r12) /* 80047260 000441C0 7D 89 03 A6 */ mtctr r12 /* 80047264 000441C4 4E 80 04 21 */ bctrl /* 80047268 000441C8 80 01 00 74 */ lwz r0, 0x74(r1) /* 8004726C 000441CC 38 81 00 78 */ addi r4, r1, 0x78 /* 80047270 000441D0 38 7D 00 04 */ addi r3, r29, 4 /* 80047274 000441D4 90 1D 00 00 */ stw r0, 0(r29) /* 80047278 000441D8 80 1D 00 00 */ lwz r0, 0(r29) /* 8004727C 000441DC 7C 09 03 A6 */ mtctr r0 /* 80047280 000441E0 2C 00 00 00 */ cmpwi r0, 0 /* 80047284 000441E4 40 81 00 38 */ ble lbl_800472BC lbl_80047288: /* 80047288 000441E8 28 03 00 00 */ cmplwi r3, 0 /* 8004728C 000441EC 41 82 00 24 */ beq lbl_800472B0 /* 80047290 000441F0 C0 04 00 00 */ lfs f0, 0(r4) /* 80047294 000441F4 D0 03 00 00 */ stfs f0, 0(r3) /* 80047298 000441F8 C0 04 00 04 */ lfs f0, 4(r4) /* 8004729C 000441FC D0 03 00 04 */ stfs f0, 4(r3) /* 800472A0 00044200 C0 04 00 08 */ lfs f0, 8(r4) /* 800472A4 00044204 D0 03 00 08 */ stfs f0, 8(r3) /* 800472A8 00044208 C0 04 00 0C */ lfs f0, 0xc(r4) /* 800472AC 0004420C D0 03 00 0C */ stfs f0, 0xc(r3) lbl_800472B0: /* 800472B0 00044210 38 63 00 10 */ addi r3, r3, 0x10 /* 800472B4 00044214 38 84 00 10 */ addi r4, r4, 0x10 /* 800472B8 00044218 42 00 FF D0 */ bdnz lbl_80047288 lbl_800472BC: /* 800472BC 0004421C 80 A1 00 74 */ lwz r5, 0x74(r1) /* 800472C0 00044220 38 60 00 00 */ li r3, 0 /* 800472C4 00044224 2C 05 00 00 */ cmpwi r5, 0 /* 800472C8 00044228 40 81 00 40 */ ble lbl_80047308 /* 800472CC 0004422C 2C 05 00 08 */ cmpwi r5, 8 /* 800472D0 00044230 38 85 FF F8 */ addi r4, r5, -8 /* 800472D4 00044234 40 81 00 20 */ ble lbl_800472F4 /* 800472D8 00044238 38 04 00 07 */ addi r0, r4, 7 /* 800472DC 0004423C 54 00 E8 FE */ srwi r0, r0, 3 /* 800472E0 00044240 7C 09 03 A6 */ mtctr r0 /* 800472E4 00044244 2C 04 00 00 */ cmpwi r4, 0 /* 800472E8 00044248 40 81 00 0C */ ble lbl_800472F4 lbl_800472EC: /* 800472EC 0004424C 38 63 00 08 */ addi r3, r3, 8 /* 800472F0 00044250 42 00 FF FC */ bdnz lbl_800472EC lbl_800472F4: /* 800472F4 00044254 7C 03 28 50 */ subf r0, r3, r5 /* 800472F8 00044258 7C 09 03 A6 */ mtctr r0 /* 800472FC 0004425C 7C 03 28 00 */ cmpw r3, r5 /* 80047300 00044260 40 80 00 08 */ bge lbl_80047308 lbl_80047304: /* 80047304 00044264 42 00 00 00 */ bdnz lbl_80047304 lbl_80047308: /* 80047308 00044268 38 00 00 00 */ li r0, 0 /* 8004730C 0004426C 90 01 00 74 */ stw r0, 0x74(r1) /* 80047310 00044270 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 /* 80047314 00044274 CB E1 01 50 */ lfd f31, 0x150(r1) /* 80047318 00044278 E3 C1 01 48 */ psq_l f30, 328(r1), 0, qr0 /* 8004731C 0004427C CB C1 01 40 */ lfd f30, 0x140(r1) /* 80047320 00044280 E3 A1 01 38 */ psq_l f29, 312(r1), 0, qr0 /* 80047324 00044284 CB A1 01 30 */ lfd f29, 0x130(r1) /* 80047328 00044288 E3 81 01 28 */ psq_l f28, 296(r1), 0, qr0 /* 8004732C 0004428C CB 81 01 20 */ lfd f28, 0x120(r1) /* 80047330 00044290 BB 21 01 04 */ lmw r25, 0x104(r1) /* 80047334 00044294 80 01 01 64 */ lwz r0, 0x164(r1) /* 80047338 00044298 7C 08 03 A6 */ mtlr r0 /* 8004733C 0004429C 38 21 01 60 */ addi r1, r1, 0x160 /* 80047340 000442A0 4E 80 00 20 */ blr .global PreRender__13CStateManagerFv PreRender__13CStateManagerFv: /* 80047344 000442A4 94 21 FF 00 */ stwu r1, -0x100(r1) /* 80047348 000442A8 7C 08 02 A6 */ mflr r0 /* 8004734C 000442AC 90 01 01 04 */ stw r0, 0x104(r1) /* 80047350 000442B0 BF 21 00 E4 */ stmw r25, 0xe4(r1) /* 80047354 000442B4 7C 7C 1B 78 */ mr r28, r3 /* 80047358 000442B8 88 03 0F 94 */ lbz r0, 0xf94(r3) /* 8004735C 000442BC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80047360 000442C0 41 82 02 B0 */ beq lbl_80047610 /* 80047364 000442C4 48 33 E0 45 */ bl OSGetTime /* 80047368 000442C8 80 BC 08 6C */ lwz r5, 0x86c(r28) /* 8004736C 000442CC 7C 9E 23 78 */ mr r30, r4 /* 80047370 000442D0 7C 7F 1B 78 */ mr r31, r3 /* 80047374 000442D4 38 60 00 00 */ li r3, 0 /* 80047378 000442D8 3C 85 00 01 */ addis r4, r5, 1 /* 8004737C 000442DC 80 C4 F3 70 */ lwz r6, -0xc90(r4) /* 80047380 000442E0 2C 06 00 00 */ cmpwi r6, 0 /* 80047384 000442E4 40 81 00 40 */ ble lbl_800473C4 /* 80047388 000442E8 2C 06 00 08 */ cmpwi r6, 8 /* 8004738C 000442EC 38 A6 FF F8 */ addi r5, r6, -8 /* 80047390 000442F0 40 81 00 20 */ ble lbl_800473B0 /* 80047394 000442F4 38 05 00 07 */ addi r0, r5, 7 /* 80047398 000442F8 54 00 E8 FE */ srwi r0, r0, 3 /* 8004739C 000442FC 7C 09 03 A6 */ mtctr r0 /* 800473A0 00044300 2C 05 00 00 */ cmpwi r5, 0 /* 800473A4 00044304 40 81 00 0C */ ble lbl_800473B0 lbl_800473A8: /* 800473A8 00044308 38 63 00 08 */ addi r3, r3, 8 /* 800473AC 0004430C 42 00 FF FC */ bdnz lbl_800473A8 lbl_800473B0: /* 800473B0 00044310 7C 03 30 50 */ subf r0, r3, r6 /* 800473B4 00044314 7C 09 03 A6 */ mtctr r0 /* 800473B8 00044318 7C 03 30 00 */ cmpw r3, r6 /* 800473BC 0004431C 40 80 00 08 */ bge lbl_800473C4 lbl_800473C0: /* 800473C0 00044320 42 00 00 00 */ bdnz lbl_800473C0 lbl_800473C4: /* 800473C4 00044324 38 A0 00 00 */ li r5, 0 /* 800473C8 00044328 90 A4 F3 70 */ stw r5, -0xc90(r4) /* 800473CC 0004432C 80 7C 08 6C */ lwz r3, 0x86c(r28) /* 800473D0 00044330 3C 63 00 01 */ addis r3, r3, 1 /* 800473D4 00044334 80 C3 F3 9C */ lwz r6, -0xc64(r3) /* 800473D8 00044338 2C 06 00 00 */ cmpwi r6, 0 /* 800473DC 0004433C 40 81 00 40 */ ble lbl_8004741C /* 800473E0 00044340 2C 06 00 08 */ cmpwi r6, 8 /* 800473E4 00044344 38 86 FF F8 */ addi r4, r6, -8 /* 800473E8 00044348 40 81 00 20 */ ble lbl_80047408 /* 800473EC 0004434C 38 04 00 07 */ addi r0, r4, 7 /* 800473F0 00044350 54 00 E8 FE */ srwi r0, r0, 3 /* 800473F4 00044354 7C 09 03 A6 */ mtctr r0 /* 800473F8 00044358 2C 04 00 00 */ cmpwi r4, 0 /* 800473FC 0004435C 40 81 00 0C */ ble lbl_80047408 lbl_80047400: /* 80047400 00044360 38 A5 00 08 */ addi r5, r5, 8 /* 80047404 00044364 42 00 FF FC */ bdnz lbl_80047400 lbl_80047408: /* 80047408 00044368 7C 05 30 50 */ subf r0, r5, r6 /* 8004740C 0004436C 7C 09 03 A6 */ mtctr r0 /* 80047410 00044370 7C 05 30 00 */ cmpw r5, r6 /* 80047414 00044374 40 80 00 08 */ bge lbl_8004741C lbl_80047418: /* 80047418 00044378 42 00 00 00 */ bdnz lbl_80047418 lbl_8004741C: /* 8004741C 0004437C 38 00 00 00 */ li r0, 0 /* 80047420 00044380 90 03 F3 9C */ stw r0, -0xc64(r3) /* 80047424 00044384 90 1C 0F 7C */ stw r0, 0xf7c(r28) /* 80047428 00044388 80 7C 08 50 */ lwz r3, 0x850(r28) /* 8004742C 0004438C 48 00 EE C5 */ bl PreRender__6CWorldFv /* 80047430 00044390 7F 83 E3 78 */ mr r3, r28 /* 80047434 00044394 4B FF E3 4D */ bl BuildDynamicLightListForWorld__13CStateManagerFv /* 80047438 00044398 80 7C 08 70 */ lwz r3, 0x870(r28) /* 8004743C 0004439C 7F 84 E3 78 */ mr r4, r28 /* 80047440 000443A0 4B FC 46 D9 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 80047444 000443A4 80 9C 08 70 */ lwz r4, 0x870(r28) /* 80047448 000443A8 7C 7D 1B 78 */ mr r29, r3 /* 8004744C 000443AC 7F 85 E3 78 */ mr r5, r28 /* 80047450 000443B0 38 61 00 14 */ addi r3, r1, 0x14 /* 80047454 000443B4 4B FC 35 15 */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager /* 80047458 000443B8 38 61 00 44 */ addi r3, r1, 0x44 /* 8004745C 000443BC 38 81 00 14 */ addi r4, r1, 0x14 /* 80047460 000443C0 48 2C B7 15 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80047464 000443C4 C0 22 85 BC */ lfs f1, lbl_805AA2DC@sda21(r2) /* 80047468 000443C8 38 61 00 74 */ addi r3, r1, 0x74 /* 8004746C 000443CC C0 1D 01 5C */ lfs f0, 0x15c(r29) /* 80047470 000443D0 38 81 00 44 */ addi r4, r1, 0x44 /* 80047474 000443D4 C0 5D 01 68 */ lfs f2, 0x168(r29) /* 80047478 000443D8 38 A0 00 00 */ li r5, 0 /* 8004747C 000443DC EC 21 00 32 */ fmuls f1, f1, f0 /* 80047480 000443E0 C0 7D 01 60 */ lfs f3, 0x160(r29) /* 80047484 000443E4 C0 82 85 C0 */ lfs f4, lbl_805AA2E0@sda21(r2) /* 80047488 000443E8 48 2F DD CD */ bl __ct__14CFrustumPlanesFRC12CTransform4ffffbf /* 8004748C 000443EC 80 7C 08 50 */ lwz r3, 0x850(r28) /* 80047490 000443F0 83 A3 00 58 */ lwz r29, 0x58(r3) /* 80047494 000443F4 48 00 00 C0 */ b lbl_80047554 lbl_80047498: /* 80047498 000443F8 88 1D 00 F0 */ lbz r0, 0xf0(r29) /* 8004749C 000443FC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800474A0 00044400 41 82 00 10 */ beq lbl_800474B0 /* 800474A4 00044404 80 7D 01 2C */ lwz r3, 0x12c(r29) /* 800474A8 00044408 80 03 10 DC */ lwz r0, 0x10dc(r3) /* 800474AC 0004440C 48 00 00 08 */ b lbl_800474B4 lbl_800474B0: /* 800474B0 00044410 38 00 00 00 */ li r0, 0 lbl_800474B4: /* 800474B4 00044414 2C 00 00 01 */ cmpwi r0, 1 /* 800474B8 00044418 40 82 00 98 */ bne lbl_80047550 /* 800474BC 0004441C 80 7D 01 2C */ lwz r3, 0x12c(r29) /* 800474C0 00044420 83 63 10 C0 */ lwz r27, 0x10c0(r3) /* 800474C4 00044424 AB 3B 20 08 */ lha r25, 0x2008(r27) /* 800474C8 00044428 48 00 00 80 */ b lbl_80047548 lbl_800474CC: /* 800474CC 0004442C 7F 63 DB 78 */ mr r3, r27 /* 800474D0 00044430 7F 24 CB 78 */ mr r4, r25 /* 800474D4 00044434 4B FC 88 41 */ bl __vc__11CObjectListFi /* 800474D8 00044438 7C 64 1B 78 */ mr r4, r3 /* 800474DC 0004443C 38 61 00 0C */ addi r3, r1, 0xc /* 800474E0 00044440 48 06 87 B1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 800474E4 00044444 83 43 00 04 */ lwz r26, 4(r3) /* 800474E8 00044448 28 1A 00 00 */ cmplwi r26, 0 /* 800474EC 0004444C 41 82 00 40 */ beq lbl_8004752C /* 800474F0 00044450 88 1A 00 E7 */ lbz r0, 0xe7(r26) /* 800474F4 00044454 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 800474F8 00044458 41 82 00 34 */ beq lbl_8004752C /* 800474FC 0004445C 7F 43 D3 78 */ mr r3, r26 /* 80047500 00044460 81 9A 00 00 */ lwz r12, 0(r26) /* 80047504 00044464 81 8C 00 30 */ lwz r12, 0x30(r12) /* 80047508 00044468 7D 89 03 A6 */ mtctr r12 /* 8004750C 0004446C 4E 80 04 21 */ bctrl /* 80047510 00044470 7F 43 D3 78 */ mr r3, r26 /* 80047514 00044474 7F 84 E3 78 */ mr r4, r28 /* 80047518 00044478 81 9A 00 00 */ lwz r12, 0(r26) /* 8004751C 0004447C 38 A1 00 74 */ addi r5, r1, 0x74 /* 80047520 00044480 81 8C 00 20 */ lwz r12, 0x20(r12) /* 80047524 00044484 7D 89 03 A6 */ mtctr r12 /* 80047528 00044488 4E 80 04 21 */ bctrl lbl_8004752C: /* 8004752C 0004448C 2C 19 FF FF */ cmpwi r25, -1 /* 80047530 00044490 41 82 00 14 */ beq lbl_80047544 /* 80047534 00044494 57 23 18 38 */ slwi r3, r25, 3 /* 80047538 00044498 38 03 00 08 */ addi r0, r3, 8 /* 8004753C 0004449C 7F 3B 02 AE */ lhax r25, r27, r0 /* 80047540 000444A0 48 00 00 08 */ b lbl_80047548 lbl_80047544: /* 80047544 000444A4 3B 20 FF FF */ li r25, -1 lbl_80047548: /* 80047548 000444A8 2C 19 FF FF */ cmpwi r25, -1 /* 8004754C 000444AC 40 82 FF 80 */ bne lbl_800474CC lbl_80047550: /* 80047550 000444B0 83 BD 01 30 */ lwz r29, 0x130(r29) lbl_80047554: /* 80047554 000444B4 38 61 00 08 */ addi r3, r1, 8 /* 80047558 000444B8 48 00 00 CD */ bl AliveAreasEnd__6CWorldFv /* 8004755C 000444BC 80 01 00 08 */ lwz r0, 8(r1) /* 80047560 000444C0 7C 00 E8 40 */ cmplw r0, r29 /* 80047564 000444C4 40 82 FF 34 */ bne lbl_80047498 /* 80047568 000444C8 88 02 80 E8 */ lbz r0, lbl_805A9E08@sda21(r2) /* 8004756C 000444CC 28 00 00 00 */ cmplwi r0, 0 /* 80047570 000444D0 40 82 00 0C */ bne lbl_8004757C /* 80047574 000444D4 7F 83 E3 78 */ mr r3, r28 /* 80047578 000444D8 4B FF E1 51 */ bl CacheReflection__13CStateManagerFv lbl_8004757C: /* 8004757C 000444DC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80047580 000444E0 38 9C 08 E0 */ addi r4, r28, 0x8e0 /* 80047584 000444E4 81 83 00 00 */ lwz r12, 0(r3) /* 80047588 000444E8 81 8C 01 08 */ lwz r12, 0x108(r12) /* 8004758C 000444EC 7D 89 03 A6 */ mtctr r12 /* 80047590 000444F0 4E 80 04 21 */ bctrl /* 80047594 000444F4 48 33 DE 15 */ bl OSGetTime /* 80047598 000444F8 3C A0 80 5A */ lis r5, mData__10CStopwatch@ha /* 8004759C 000444FC 7C 9E 20 10 */ subfc r4, r30, r4 /* 800475A0 00044500 38 C5 FD 30 */ addi r6, r5, mData__10CStopwatch@l /* 800475A4 00044504 7C 7F 19 10 */ subfe r3, r31, r3 /* 800475A8 00044508 80 A6 00 08 */ lwz r5, 8(r6) /* 800475AC 0004450C 80 C6 00 0C */ lwz r6, 0xc(r6) /* 800475B0 00044510 48 34 26 1D */ bl __div2i /* 800475B4 00044514 80 C1 00 74 */ lwz r6, 0x74(r1) /* 800475B8 00044518 38 A0 00 00 */ li r5, 0 /* 800475BC 0004451C 90 8D A1 DC */ stw r4, lbl_805A8D9C@sda21(r13) /* 800475C0 00044520 2C 06 00 00 */ cmpwi r6, 0 /* 800475C4 00044524 90 6D A1 D8 */ stw r3, lbl_805A8D98@sda21(r13) /* 800475C8 00044528 40 81 00 40 */ ble lbl_80047608 /* 800475CC 0004452C 2C 06 00 08 */ cmpwi r6, 8 /* 800475D0 00044530 38 66 FF F8 */ addi r3, r6, -8 /* 800475D4 00044534 40 81 00 20 */ ble lbl_800475F4 /* 800475D8 00044538 38 03 00 07 */ addi r0, r3, 7 /* 800475DC 0004453C 54 00 E8 FE */ srwi r0, r0, 3 /* 800475E0 00044540 7C 09 03 A6 */ mtctr r0 /* 800475E4 00044544 2C 03 00 00 */ cmpwi r3, 0 /* 800475E8 00044548 40 81 00 0C */ ble lbl_800475F4 lbl_800475EC: /* 800475EC 0004454C 38 A5 00 08 */ addi r5, r5, 8 /* 800475F0 00044550 42 00 FF FC */ bdnz lbl_800475EC lbl_800475F4: /* 800475F4 00044554 7C 05 30 50 */ subf r0, r5, r6 /* 800475F8 00044558 7C 09 03 A6 */ mtctr r0 /* 800475FC 0004455C 7C 05 30 00 */ cmpw r5, r6 /* 80047600 00044560 40 80 00 08 */ bge lbl_80047608 lbl_80047604: /* 80047604 00044564 42 00 00 00 */ bdnz lbl_80047604 lbl_80047608: /* 80047608 00044568 38 00 00 00 */ li r0, 0 /* 8004760C 0004456C 90 01 00 74 */ stw r0, 0x74(r1) lbl_80047610: /* 80047610 00044570 BB 21 00 E4 */ lmw r25, 0xe4(r1) /* 80047614 00044574 80 01 01 04 */ lwz r0, 0x104(r1) /* 80047618 00044578 7C 08 03 A6 */ mtlr r0 /* 8004761C 0004457C 38 21 01 00 */ addi r1, r1, 0x100 /* 80047620 00044580 4E 80 00 20 */ blr .global AliveAreasEnd__6CWorldFv AliveAreasEnd__6CWorldFv: /* 80047624 00044584 80 0D A2 1C */ lwz r0, lbl_805A8DDC@sda21(r13) /* 80047628 00044588 90 03 00 00 */ stw r0, 0(r3) /* 8004762C 0004458C 4E 80 00 20 */ blr .global GetVisSetForArea__13CStateManagerCF7TAreaId7TAreaId GetVisSetForArea__13CStateManagerCF7TAreaId7TAreaId: /* 80047630 00044590 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 80047634 00044594 7C 08 02 A6 */ mflr r0 /* 80047638 00044598 90 01 00 E4 */ stw r0, 0xe4(r1) /* 8004763C 0004459C DB E1 00 D0 */ stfd f31, 0xd0(r1) /* 80047640 000445A0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 /* 80047644 000445A4 DB C1 00 C0 */ stfd f30, 0xc0(r1) /* 80047648 000445A8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 /* 8004764C 000445AC DB A1 00 B0 */ stfd f29, 0xb0(r1) /* 80047650 000445B0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 /* 80047654 000445B4 BE A1 00 84 */ stmw r21, 0x84(r1) /* 80047658 000445B8 80 A5 00 00 */ lwz r5, 0(r5) /* 8004765C 000445BC 7C 7C 1B 78 */ mr r28, r3 /* 80047660 000445C0 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 80047664 000445C4 7C 9D 23 78 */ mr r29, r4 /* 80047668 000445C8 7C DE 33 78 */ mr r30, r6 /* 8004766C 000445CC 7C 05 00 00 */ cmpw r5, r0 /* 80047670 000445D0 40 82 00 0C */ bne lbl_8004767C /* 80047674 000445D4 38 60 00 00 */ li r3, 0 /* 80047678 000445D8 48 00 03 14 */ b lbl_8004798C lbl_8004767C: /* 8004767C 000445DC 3C 60 80 5A */ lis r3, lbl_805A61D4@ha /* 80047680 000445E0 80 1D 00 00 */ lwz r0, 0(r29) /* 80047684 000445E4 38 63 61 D4 */ addi r3, r3, lbl_805A61D4@l /* 80047688 000445E8 3B E0 00 00 */ li r31, 0 /* 8004768C 000445EC C3 A3 00 2C */ lfs f29, 0x2c(r3) /* 80047690 000445F0 7C 00 28 00 */ cmpw r0, r5 /* 80047694 000445F4 C3 C3 00 0C */ lfs f30, 0xc(r3) /* 80047698 000445F8 C3 E3 00 1C */ lfs f31, 0x1c(r3) /* 8004769C 000445FC D3 C1 00 48 */ stfs f30, 0x48(r1) /* 800476A0 00044600 D3 E1 00 4C */ stfs f31, 0x4c(r1) /* 800476A4 00044604 D3 A1 00 50 */ stfs f29, 0x50(r1) /* 800476A8 00044608 40 82 00 0C */ bne lbl_800476B4 /* 800476AC 0004460C 3B E0 00 01 */ li r31, 1 /* 800476B0 00044610 48 00 01 70 */ b lbl_80047820 lbl_800476B4: /* 800476B4 00044614 80 9C 08 50 */ lwz r4, 0x850(r28) /* 800476B8 00044618 54 A3 18 38 */ slwi r3, r5, 3 /* 800476BC 0004461C 38 03 00 04 */ addi r0, r3, 4 /* 800476C0 00044620 90 A1 00 14 */ stw r5, 0x14(r1) /* 800476C4 00044624 80 64 00 20 */ lwz r3, 0x20(r4) /* 800476C8 00044628 7F 63 00 2E */ lwzx r27, r3, r0 /* 800476CC 0004462C 88 1B 00 F0 */ lbz r0, 0xf0(r27) /* 800476D0 00044630 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800476D4 00044634 41 82 01 4C */ beq lbl_80047820 /* 800476D8 00044638 83 5B 00 D0 */ lwz r26, 0xd0(r27) /* 800476DC 0004463C 3A C0 00 00 */ li r22, 0 /* 800476E0 00044640 3A E0 00 00 */ li r23, 0 /* 800476E4 00044644 48 00 01 34 */ b lbl_80047818 lbl_800476E8: /* 800476E8 00044648 80 1B 00 D8 */ lwz r0, 0xd8(r27) /* 800476EC 0004464C 3A A0 00 00 */ li r21, 0 /* 800476F0 00044650 7F 20 BA 14 */ add r25, r0, r23 /* 800476F4 00044654 83 19 00 08 */ lwz r24, 8(r25) /* 800476F8 00044658 48 00 01 10 */ b lbl_80047808 lbl_800476FC: /* 800476FC 0004465C 7F 24 CB 78 */ mr r4, r25 /* 80047700 00044660 7E A5 AB 78 */ mr r5, r21 /* 80047704 00044664 38 61 00 10 */ addi r3, r1, 0x10 /* 80047708 00044668 48 01 7C 1D */ bl GetConnectedAreaId__Q29IGameArea4DockCFi /* 8004770C 0004466C 80 61 00 10 */ lwz r3, 0x10(r1) /* 80047710 00044670 80 1D 00 00 */ lwz r0, 0(r29) /* 80047714 00044674 7C 03 00 00 */ cmpw r3, r0 /* 80047718 00044678 40 82 00 EC */ bne lbl_80047804 /* 8004771C 0004467C C0 79 00 18 */ lfs f3, 0x18(r25) /* 80047720 00044680 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 80047724 00044684 C0 39 00 24 */ lfs f1, 0x24(r25) /* 80047728 00044688 C0 59 00 1C */ lfs f2, 0x1c(r25) /* 8004772C 0004468C EC A3 08 2A */ fadds f5, f3, f1 /* 80047730 00044690 C0 19 00 28 */ lfs f0, 0x28(r25) /* 80047734 00044694 C0 79 00 30 */ lfs f3, 0x30(r25) /* 80047738 00044698 EC 82 00 2A */ fadds f4, f2, f0 /* 8004773C 0004469C C0 39 00 20 */ lfs f1, 0x20(r25) /* 80047740 000446A0 EC C5 18 2A */ fadds f6, f5, f3 /* 80047744 000446A4 C0 19 00 2C */ lfs f0, 0x2c(r25) /* 80047748 000446A8 C0 79 00 34 */ lfs f3, 0x34(r25) /* 8004774C 000446AC EC 41 00 2A */ fadds f2, f1, f0 /* 80047750 000446B0 C0 39 00 38 */ lfs f1, 0x38(r25) /* 80047754 000446B4 EC 64 18 2A */ fadds f3, f4, f3 /* 80047758 000446B8 C0 19 00 40 */ lfs f0, 0x40(r25) /* 8004775C 000446BC C0 B9 00 3C */ lfs f5, 0x3c(r25) /* 80047760 000446C0 EC 22 08 2A */ fadds f1, f2, f1 /* 80047764 000446C4 EC 63 00 2A */ fadds f3, f3, f0 /* 80047768 000446C8 C0 19 00 44 */ lfs f0, 0x44(r25) /* 8004776C 000446CC EC 86 28 2A */ fadds f4, f6, f5 /* 80047770 000446D0 C0 A2 85 70 */ lfs f5, lbl_805AA290@sda21(r2) /* 80047774 000446D4 EC 01 00 2A */ fadds f0, f1, f0 /* 80047778 000446D8 ED 25 00 F2 */ fmuls f9, f5, f3 /* 8004777C 000446DC ED 45 01 32 */ fmuls f10, f5, f4 /* 80047780 000446E0 ED 05 00 32 */ fmuls f8, f5, f0 /* 80047784 000446E4 41 82 00 70 */ beq lbl_800477F4 /* 80047788 000446E8 C0 41 00 4C */ lfs f2, 0x4c(r1) /* 8004778C 000446EC EC 0A F0 28 */ fsubs f0, f10, f30 /* 80047790 000446F0 C0 21 00 48 */ lfs f1, 0x48(r1) /* 80047794 000446F4 EC 89 F8 28 */ fsubs f4, f9, f31 /* 80047798 000446F8 EC C2 F8 28 */ fsubs f6, f2, f31 /* 8004779C 000446FC C0 41 00 50 */ lfs f2, 0x50(r1) /* 800477A0 00044700 EC 21 F0 28 */ fsubs f1, f1, f30 /* 800477A4 00044704 EC E2 E8 28 */ fsubs f7, f2, f29 /* 800477A8 00044708 D0 01 00 30 */ stfs f0, 0x30(r1) /* 800477AC 0004470C EC 68 E8 28 */ fsubs f3, f8, f29 /* 800477B0 00044710 EC A1 00 72 */ fmuls f5, f1, f1 /* 800477B4 00044714 D0 21 00 24 */ stfs f1, 0x24(r1) /* 800477B8 00044718 EC 46 01 B2 */ fmuls f2, f6, f6 /* 800477BC 0004471C EC 20 00 32 */ fmuls f1, f0, f0 /* 800477C0 00044720 D0 C1 00 28 */ stfs f6, 0x28(r1) /* 800477C4 00044724 EC 04 01 32 */ fmuls f0, f4, f4 /* 800477C8 00044728 EC C7 01 F2 */ fmuls f6, f7, f7 /* 800477CC 0004472C D0 E1 00 2C */ stfs f7, 0x2c(r1) /* 800477D0 00044730 EC A5 10 2A */ fadds f5, f5, f2 /* 800477D4 00044734 EC 43 00 F2 */ fmuls f2, f3, f3 /* 800477D8 00044738 D0 81 00 34 */ stfs f4, 0x34(r1) /* 800477DC 0004473C EC 01 00 2A */ fadds f0, f1, f0 /* 800477E0 00044740 EC 26 28 2A */ fadds f1, f6, f5 /* 800477E4 00044744 D0 61 00 38 */ stfs f3, 0x38(r1) /* 800477E8 00044748 EC 02 00 2A */ fadds f0, f2, f0 /* 800477EC 0004474C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800477F0 00044750 40 80 00 14 */ bge lbl_80047804 lbl_800477F4: /* 800477F4 00044754 D1 41 00 48 */ stfs f10, 0x48(r1) /* 800477F8 00044758 3B E0 00 01 */ li r31, 1 /* 800477FC 0004475C D1 21 00 4C */ stfs f9, 0x4c(r1) /* 80047800 00044760 D1 01 00 50 */ stfs f8, 0x50(r1) lbl_80047804: /* 80047804 00044764 3A B5 00 01 */ addi r21, r21, 1 lbl_80047808: /* 80047808 00044768 7C 15 C0 00 */ cmpw r21, r24 /* 8004780C 0004476C 41 80 FE F0 */ blt lbl_800476FC /* 80047810 00044770 3A F7 00 4C */ addi r23, r23, 0x4c /* 80047814 00044774 3A D6 00 01 */ addi r22, r22, 1 lbl_80047818: /* 80047818 00044778 7C 16 D0 00 */ cmpw r22, r26 /* 8004781C 0004477C 41 80 FE CC */ blt lbl_800476E8 lbl_80047820: /* 80047820 00044780 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 80047824 00044784 3B E0 00 00 */ li r31, 0 /* 80047828 00044788 41 82 01 58 */ beq lbl_80047980 /* 8004782C 0004478C 80 1D 00 00 */ lwz r0, 0(r29) /* 80047830 00044790 3B E0 00 01 */ li r31, 1 /* 80047834 00044794 80 9C 08 50 */ lwz r4, 0x850(r28) /* 80047838 00044798 54 03 18 38 */ slwi r3, r0, 3 /* 8004783C 0004479C 90 01 00 0C */ stw r0, 0xc(r1) /* 80047840 000447A0 80 84 00 20 */ lwz r4, 0x20(r4) /* 80047844 000447A4 38 03 00 04 */ addi r0, r3, 4 /* 80047848 000447A8 7C 64 00 2E */ lwzx r3, r4, r0 /* 8004784C 000447AC 80 63 01 2C */ lwz r3, 0x12c(r3) /* 80047850 000447B0 80 63 00 A0 */ lwz r3, 0xa0(r3) /* 80047854 000447B4 28 03 00 00 */ cmplwi r3, 0 /* 80047858 000447B8 41 82 01 28 */ beq lbl_80047980 /* 8004785C 000447BC 3B E0 00 02 */ li r31, 2 /* 80047860 000447C0 48 26 6C 25 */ bl GetVisOctree__11CPVSAreaSetCFUi /* 80047864 000447C4 80 1D 00 00 */ lwz r0, 0(r29) /* 80047868 000447C8 7C 75 1B 78 */ mr r21, r3 /* 8004786C 000447CC 80 9C 08 50 */ lwz r4, 0x850(r28) /* 80047870 000447D0 38 A1 00 48 */ addi r5, r1, 0x48 /* 80047874 000447D4 54 03 18 38 */ slwi r3, r0, 3 /* 80047878 000447D8 90 01 00 08 */ stw r0, 8(r1) /* 8004787C 000447DC 38 03 00 04 */ addi r0, r3, 4 /* 80047880 000447E0 80 84 00 20 */ lwz r4, 0x20(r4) /* 80047884 000447E4 38 61 00 18 */ addi r3, r1, 0x18 /* 80047888 000447E8 7C 84 00 2E */ lwzx r4, r4, r0 /* 8004788C 000447EC 38 84 00 3C */ addi r4, r4, 0x3c /* 80047890 000447F0 48 2C B2 59 */ bl __ml__12CTransform4fCFRC9CVector3f /* 80047894 000447F4 C0 41 00 18 */ lfs f2, 0x18(r1) /* 80047898 000447F8 7E A4 AB 78 */ mr r4, r21 /* 8004789C 000447FC C0 21 00 1C */ lfs f1, 0x1c(r1) /* 800478A0 00044800 38 61 00 54 */ addi r3, r1, 0x54 /* 800478A4 00044804 C0 01 00 20 */ lfs f0, 0x20(r1) /* 800478A8 00044808 38 A1 00 3C */ addi r5, r1, 0x3c /* 800478AC 0004480C D0 41 00 3C */ stfs f2, 0x3c(r1) /* 800478B0 00044810 D0 21 00 40 */ stfs f1, 0x40(r1) /* 800478B4 00044814 D0 01 00 44 */ stfs f0, 0x44(r1) /* 800478B8 00044818 48 2C E6 C1 */ bl SetTestPoint__10CPVSVisSetFRC13CPVSVisOctreeRC9CVector3f /* 800478BC 0004481C 34 01 00 60 */ addic. r0, r1, 0x60 /* 800478C0 00044820 80 E1 00 54 */ lwz r7, 0x54(r1) /* 800478C4 00044824 80 C1 00 58 */ lwz r6, 0x58(r1) /* 800478C8 00044828 38 00 00 00 */ li r0, 0 /* 800478CC 0004482C 88 81 00 60 */ lbz r4, 0x60(r1) /* 800478D0 00044830 3A E1 00 74 */ addi r23, r1, 0x74 /* 800478D4 00044834 80 A1 00 5C */ lwz r5, 0x5c(r1) /* 800478D8 00044838 80 61 00 64 */ lwz r3, 0x64(r1) /* 800478DC 0004483C 90 E1 00 68 */ stw r7, 0x68(r1) /* 800478E0 00044840 90 C1 00 6C */ stw r6, 0x6c(r1) /* 800478E4 00044844 90 A1 00 70 */ stw r5, 0x70(r1) /* 800478E8 00044848 98 81 00 74 */ stb r4, 0x74(r1) /* 800478EC 0004484C 90 61 00 78 */ stw r3, 0x78(r1) /* 800478F0 00044850 98 01 00 60 */ stb r0, 0x60(r1) /* 800478F4 00044854 41 82 00 14 */ beq lbl_80047908 /* 800478F8 00044858 28 00 00 00 */ cmplwi r0, 0 /* 800478FC 0004485C 41 82 00 0C */ beq lbl_80047908 /* 80047900 00044860 80 61 00 64 */ lwz r3, 0x64(r1) /* 80047904 00044864 48 2C E0 2D */ bl Free__7CMemoryFPCv lbl_80047908: /* 80047908 00044868 80 01 00 68 */ lwz r0, 0x68(r1) /* 8004790C 0004486C 2C 00 00 01 */ cmpwi r0, 1 /* 80047910 00044870 40 82 00 54 */ bne lbl_80047964 /* 80047914 00044874 90 1E 00 00 */ stw r0, 0(r30) /* 80047918 00044878 38 1E 00 0C */ addi r0, r30, 0xc /* 8004791C 0004487C 7C 17 00 40 */ cmplw r23, r0 /* 80047920 00044880 3B E0 00 03 */ li r31, 3 /* 80047924 00044884 80 01 00 6C */ lwz r0, 0x6c(r1) /* 80047928 00044888 90 1E 00 04 */ stw r0, 4(r30) /* 8004792C 0004488C 80 01 00 70 */ lwz r0, 0x70(r1) /* 80047930 00044890 90 1E 00 08 */ stw r0, 8(r30) /* 80047934 00044894 41 82 00 30 */ beq lbl_80047964 /* 80047938 00044898 88 1E 00 0C */ lbz r0, 0xc(r30) /* 8004793C 0004489C 28 00 00 00 */ cmplwi r0, 0 /* 80047940 000448A0 41 82 00 0C */ beq lbl_8004794C /* 80047944 000448A4 80 7E 00 10 */ lwz r3, 0x10(r30) /* 80047948 000448A8 48 2C DF E9 */ bl Free__7CMemoryFPCv lbl_8004794C: /* 8004794C 000448AC 88 61 00 74 */ lbz r3, 0x74(r1) /* 80047950 000448B0 38 00 00 00 */ li r0, 0 /* 80047954 000448B4 98 7E 00 0C */ stb r3, 0xc(r30) /* 80047958 000448B8 80 61 00 78 */ lwz r3, 0x78(r1) /* 8004795C 000448BC 90 7E 00 10 */ stw r3, 0x10(r30) /* 80047960 000448C0 98 01 00 74 */ stb r0, 0x74(r1) lbl_80047964: /* 80047964 000448C4 28 17 00 00 */ cmplwi r23, 0 /* 80047968 000448C8 41 82 00 18 */ beq lbl_80047980 /* 8004796C 000448CC 88 01 00 74 */ lbz r0, 0x74(r1) /* 80047970 000448D0 28 00 00 00 */ cmplwi r0, 0 /* 80047974 000448D4 41 82 00 0C */ beq lbl_80047980 /* 80047978 000448D8 80 61 00 78 */ lwz r3, 0x78(r1) /* 8004797C 000448DC 48 2C DF B5 */ bl Free__7CMemoryFPCv lbl_80047980: /* 80047980 000448E0 20 1F 00 03 */ subfic r0, r31, 3 /* 80047984 000448E4 7C 00 00 34 */ cntlzw r0, r0 /* 80047988 000448E8 54 03 D9 7E */ srwi r3, r0, 5 lbl_8004798C: /* 8004798C 000448EC E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 80047990 000448F0 CB E1 00 D0 */ lfd f31, 0xd0(r1) /* 80047994 000448F4 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 /* 80047998 000448F8 CB C1 00 C0 */ lfd f30, 0xc0(r1) /* 8004799C 000448FC E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 /* 800479A0 00044900 CB A1 00 B0 */ lfd f29, 0xb0(r1) /* 800479A4 00044904 BA A1 00 84 */ lmw r21, 0x84(r1) /* 800479A8 00044908 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 800479AC 0004490C 7C 08 03 A6 */ mtlr r0 /* 800479B0 00044910 38 21 00 E0 */ addi r1, r1, 0xe0 /* 800479B4 00044914 4E 80 00 20 */ blr .global RendererDrawCallback__13CStateManagerFPCvPCvi RendererDrawCallback__13CStateManagerFPCvPCvi: /* 800479B8 00044918 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800479BC 0004491C 7C 08 02 A6 */ mflr r0 /* 800479C0 00044920 2C 05 00 01 */ cmpwi r5, 1 /* 800479C4 00044924 90 01 00 24 */ stw r0, 0x24(r1) /* 800479C8 00044928 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800479CC 0004492C 7C 9F 23 78 */ mr r31, r4 /* 800479D0 00044930 93 C1 00 18 */ stw r30, 0x18(r1) /* 800479D4 00044934 41 82 00 80 */ beq lbl_80047A54 /* 800479D8 00044938 40 80 00 10 */ bge lbl_800479E8 /* 800479DC 0004493C 2C 05 00 00 */ cmpwi r5, 0 /* 800479E0 00044940 40 80 00 14 */ bge lbl_800479F4 /* 800479E4 00044944 48 00 00 80 */ b lbl_80047A64 lbl_800479E8: /* 800479E8 00044948 2C 05 00 03 */ cmpwi r5, 3 /* 800479EC 0004494C 40 80 00 78 */ bge lbl_80047A64 /* 800479F0 00044950 48 00 00 70 */ b lbl_80047A60 lbl_800479F4: /* 800479F4 00044954 7C 7E 1B 78 */ mr r30, r3 /* 800479F8 00044958 80 7F 08 DC */ lwz r3, 0x8dc(r31) /* 800479FC 0004495C 80 1E 00 C8 */ lwz r0, 0xc8(r30) /* 80047A00 00044960 7C 03 00 40 */ cmplw r3, r0 /* 80047A04 00044964 41 82 00 60 */ beq lbl_80047A64 /* 80047A08 00044968 A0 9E 00 C6 */ lhz r4, 0xc6(r30) /* 80047A0C 0004496C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80047A10 00044970 54 83 04 3E */ clrlwi r3, r4, 0x10 /* 80047A14 00044974 B0 81 00 0C */ sth r4, 0xc(r1) /* 80047A18 00044978 7C 03 00 40 */ cmplw r3, r0 /* 80047A1C 0004497C 41 82 00 14 */ beq lbl_80047A30 /* 80047A20 00044980 B0 81 00 08 */ sth r4, 8(r1) /* 80047A24 00044984 7F E3 FB 78 */ mr r3, r31 /* 80047A28 00044988 38 81 00 08 */ addi r4, r1, 8 /* 80047A2C 0004498C 48 00 00 51 */ bl RecursiveDrawTree__13CStateManagerCF9TUniqueId lbl_80047A30: /* 80047A30 00044990 7F C3 F3 78 */ mr r3, r30 /* 80047A34 00044994 7F E4 FB 78 */ mr r4, r31 /* 80047A38 00044998 81 9E 00 00 */ lwz r12, 0(r30) /* 80047A3C 0004499C 81 8C 00 28 */ lwz r12, 0x28(r12) /* 80047A40 000449A0 7D 89 03 A6 */ mtctr r12 /* 80047A44 000449A4 4E 80 04 21 */ bctrl /* 80047A48 000449A8 80 1F 08 DC */ lwz r0, 0x8dc(r31) /* 80047A4C 000449AC 90 1E 00 C8 */ stw r0, 0xc8(r30) /* 80047A50 000449B0 48 00 00 14 */ b lbl_80047A64 lbl_80047A54: /* 80047A54 000449B4 80 9F 08 F8 */ lwz r4, 0x8f8(r31) /* 80047A58 000449B8 48 0B E2 BD */ bl Render__13CSimpleShadowCFPC8CTexture /* 80047A5C 000449BC 48 00 00 08 */ b lbl_80047A64 lbl_80047A60: /* 80047A60 000449C0 48 26 CE 2D */ bl Render__6CDecalCFv lbl_80047A64: /* 80047A64 000449C4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80047A68 000449C8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80047A6C 000449CC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80047A70 000449D0 7C 08 03 A6 */ mtlr r0 /* 80047A74 000449D4 38 21 00 20 */ addi r1, r1, 0x20 /* 80047A78 000449D8 4E 80 00 20 */ blr .global RecursiveDrawTree__13CStateManagerCF9TUniqueId RecursiveDrawTree__13CStateManagerCF9TUniqueId: /* 80047A7C 000449DC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80047A80 000449E0 7C 08 02 A6 */ mflr r0 /* 80047A84 000449E4 90 01 00 34 */ stw r0, 0x34(r1) /* 80047A88 000449E8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80047A8C 000449EC 93 C1 00 28 */ stw r30, 0x28(r1) /* 80047A90 000449F0 7C 7E 1B 78 */ mr r30, r3 /* 80047A94 000449F4 A0 04 00 00 */ lhz r0, 0(r4) /* 80047A98 000449F8 38 81 00 0C */ addi r4, r1, 0xc /* 80047A9C 000449FC B0 01 00 0C */ sth r0, 0xc(r1) /* 80047AA0 00044A00 48 00 4B 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80047AA4 00044A04 7C 64 1B 78 */ mr r4, r3 /* 80047AA8 00044A08 38 61 00 14 */ addi r3, r1, 0x14 /* 80047AAC 00044A0C 48 06 81 E5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 80047AB0 00044A10 83 E3 00 04 */ lwz r31, 4(r3) /* 80047AB4 00044A14 28 1F 00 00 */ cmplwi r31, 0 /* 80047AB8 00044A18 41 82 00 6C */ beq lbl_80047B24 /* 80047ABC 00044A1C 80 7E 08 DC */ lwz r3, 0x8dc(r30) /* 80047AC0 00044A20 80 1F 00 C8 */ lwz r0, 0xc8(r31) /* 80047AC4 00044A24 7C 03 00 40 */ cmplw r3, r0 /* 80047AC8 00044A28 41 82 00 5C */ beq lbl_80047B24 /* 80047ACC 00044A2C A0 9F 00 C6 */ lhz r4, 0xc6(r31) /* 80047AD0 00044A30 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80047AD4 00044A34 54 83 04 3E */ clrlwi r3, r4, 0x10 /* 80047AD8 00044A38 B0 81 00 10 */ sth r4, 0x10(r1) /* 80047ADC 00044A3C 7C 03 00 40 */ cmplw r3, r0 /* 80047AE0 00044A40 41 82 00 14 */ beq lbl_80047AF4 /* 80047AE4 00044A44 B0 81 00 08 */ sth r4, 8(r1) /* 80047AE8 00044A48 7F C3 F3 78 */ mr r3, r30 /* 80047AEC 00044A4C 38 81 00 08 */ addi r4, r1, 8 /* 80047AF0 00044A50 4B FF FF 8D */ bl RecursiveDrawTree__13CStateManagerCF9TUniqueId lbl_80047AF4: /* 80047AF4 00044A54 80 7E 08 DC */ lwz r3, 0x8dc(r30) /* 80047AF8 00044A58 80 1F 00 CC */ lwz r0, 0xcc(r31) /* 80047AFC 00044A5C 7C 03 00 40 */ cmplw r3, r0 /* 80047B00 00044A60 40 82 00 1C */ bne lbl_80047B1C /* 80047B04 00044A64 7F E3 FB 78 */ mr r3, r31 /* 80047B08 00044A68 7F C4 F3 78 */ mr r4, r30 /* 80047B0C 00044A6C 81 9F 00 00 */ lwz r12, 0(r31) /* 80047B10 00044A70 81 8C 00 28 */ lwz r12, 0x28(r12) /* 80047B14 00044A74 7D 89 03 A6 */ mtctr r12 /* 80047B18 00044A78 4E 80 04 21 */ bctrl lbl_80047B1C: /* 80047B1C 00044A7C 80 1E 08 DC */ lwz r0, 0x8dc(r30) /* 80047B20 00044A80 90 1F 00 C8 */ stw r0, 0xc8(r31) lbl_80047B24: /* 80047B24 00044A84 80 01 00 34 */ lwz r0, 0x34(r1) /* 80047B28 00044A88 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80047B2C 00044A8C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80047B30 00044A90 7C 08 03 A6 */ mtlr r0 /* 80047B34 00044A94 38 21 00 30 */ addi r1, r1, 0x30 /* 80047B38 00044A98 4E 80 00 20 */ blr .global SendScriptMsg__13CStateManagerF9TUniqueId9TEditorId20EScriptObjectMessage18EScriptObjectState SendScriptMsg__13CStateManagerF9TUniqueId9TEditorId20EScriptObjectMessage18EScriptObjectState: /* 80047B3C 00044A9C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80047B40 00044AA0 7C 08 02 A6 */ mflr r0 /* 80047B44 00044AA4 90 01 00 54 */ stw r0, 0x54(r1) /* 80047B48 00044AA8 BF 01 00 30 */ stmw r24, 0x30(r1) /* 80047B4C 00044AAC 7C 9A 23 78 */ mr r26, r4 /* 80047B50 00044AB0 7C 79 1B 78 */ mr r25, r3 /* 80047B54 00044AB4 7C B8 2B 78 */ mr r24, r5 /* 80047B58 00044AB8 7C DB 33 78 */ mr r27, r6 /* 80047B5C 00044ABC A0 04 00 00 */ lhz r0, 0(r4) /* 80047B60 00044AC0 38 81 00 10 */ addi r4, r1, 0x10 /* 80047B64 00044AC4 B0 01 00 10 */ sth r0, 0x10(r1) /* 80047B68 00044AC8 48 00 4A 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80047B6C 00044ACC 83 F9 08 10 */ lwz r31, 0x810(r25) /* 80047B70 00044AD0 7F 24 CB 78 */ mr r4, r25 /* 80047B74 00044AD4 80 18 00 00 */ lwz r0, 0(r24) /* 80047B78 00044AD8 38 61 00 18 */ addi r3, r1, 0x18 /* 80047B7C 00044ADC 38 A1 00 14 */ addi r5, r1, 0x14 /* 80047B80 00044AE0 90 01 00 14 */ stw r0, 0x14(r1) /* 80047B84 00044AE4 48 00 04 45 */ bl GetIdListForScript__13CStateManagerCF9TEditorId /* 80047B88 00044AE8 83 01 00 18 */ lwz r24, 0x18(r1) /* 80047B8C 00044AEC 38 00 00 00 */ li r0, 0 /* 80047B90 00044AF0 83 A1 00 20 */ lwz r29, 0x20(r1) /* 80047B94 00044AF4 83 C1 00 1C */ lwz r30, 0x1c(r1) /* 80047B98 00044AF8 7C 18 E8 40 */ cmplw r24, r29 /* 80047B9C 00044AFC 83 81 00 24 */ lwz r28, 0x24(r1) /* 80047BA0 00044B00 40 82 00 10 */ bne lbl_80047BB0 /* 80047BA4 00044B04 7C 1E E0 40 */ cmplw r30, r28 /* 80047BA8 00044B08 40 82 00 08 */ bne lbl_80047BB0 /* 80047BAC 00044B0C 38 00 00 01 */ li r0, 1 lbl_80047BB0: /* 80047BB0 00044B10 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80047BB4 00044B14 40 82 00 68 */ bne lbl_80047C1C /* 80047BB8 00044B18 48 00 00 44 */ b lbl_80047BFC lbl_80047BBC: /* 80047BBC 00044B1C A0 18 00 14 */ lhz r0, 0x14(r24) /* 80047BC0 00044B20 7F E3 FB 78 */ mr r3, r31 /* 80047BC4 00044B24 38 81 00 0C */ addi r4, r1, 0xc /* 80047BC8 00044B28 B0 01 00 0C */ sth r0, 0xc(r1) /* 80047BCC 00044B2C 4B FC 82 7D */ bl GetObjectById__11CObjectListF9TUniqueId /* 80047BD0 00044B30 A0 1A 00 00 */ lhz r0, 0(r26) /* 80047BD4 00044B34 7C 64 1B 78 */ mr r4, r3 /* 80047BD8 00044B38 7F 23 CB 78 */ mr r3, r25 /* 80047BDC 00044B3C 7F 66 DB 78 */ mr r6, r27 /* 80047BE0 00044B40 B0 01 00 08 */ sth r0, 8(r1) /* 80047BE4 00044B44 38 A1 00 08 */ addi r5, r1, 8 /* 80047BE8 00044B48 4B FF C2 E9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage /* 80047BEC 00044B4C 7F C3 F3 78 */ mr r3, r30 /* 80047BF0 00044B50 7F 04 C3 78 */ mr r4, r24 /* 80047BF4 00044B54 48 2F 49 ED */ bl rbtree_traverse_forward__4rstlFPCvPv /* 80047BF8 00044B58 7C 78 1B 78 */ mr r24, r3 lbl_80047BFC: /* 80047BFC 00044B5C 7C 18 E8 40 */ cmplw r24, r29 /* 80047C00 00044B60 38 00 00 00 */ li r0, 0 /* 80047C04 00044B64 40 82 00 0C */ bne lbl_80047C10 /* 80047C08 00044B68 7C 1E E0 40 */ cmplw r30, r28 /* 80047C0C 00044B6C 41 82 00 08 */ beq lbl_80047C14 lbl_80047C10: /* 80047C10 00044B70 38 00 00 01 */ li r0, 1 lbl_80047C14: /* 80047C14 00044B74 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80047C18 00044B78 40 82 FF A4 */ bne lbl_80047BBC lbl_80047C1C: /* 80047C1C 00044B7C BB 01 00 30 */ lmw r24, 0x30(r1) /* 80047C20 00044B80 80 01 00 54 */ lwz r0, 0x54(r1) /* 80047C24 00044B84 7C 08 03 A6 */ mtlr r0 /* 80047C28 00044B88 38 21 00 50 */ addi r1, r1, 0x50 /* 80047C2C 00044B8C 4E 80 00 20 */ blr .global FreeScriptObjects__13CStateManagerF7TAreaId FreeScriptObjects__13CStateManagerF7TAreaId: /* 80047C30 00044B90 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80047C34 00044B94 7C 08 02 A6 */ mflr r0 /* 80047C38 00044B98 90 01 00 54 */ stw r0, 0x54(r1) /* 80047C3C 00044B9C BF 41 00 38 */ stmw r26, 0x38(r1) /* 80047C40 00044BA0 7C 7E 1B 78 */ mr r30, r3 /* 80047C44 00044BA4 3B 7E 08 98 */ addi r27, r30, 0x898 /* 80047C48 00044BA8 7C 9F 23 78 */ mr r31, r4 /* 80047C4C 00044BAC 93 61 00 2C */ stw r27, 0x2c(r1) /* 80047C50 00044BB0 83 A3 08 98 */ lwz r29, 0x898(r3) /* 80047C54 00044BB4 48 00 00 40 */ b lbl_80047C94 lbl_80047C58: /* 80047C58 00044BB8 7F BC EB 78 */ mr r28, r29 /* 80047C5C 00044BBC 7F 63 DB 78 */ mr r3, r27 /* 80047C60 00044BC0 7F A4 EB 78 */ mr r4, r29 /* 80047C64 00044BC4 48 2F 49 7D */ bl rbtree_traverse_forward__4rstlFPCvPv /* 80047C68 00044BC8 80 9C 00 10 */ lwz r4, 0x10(r28) /* 80047C6C 00044BCC 7C 7D 1B 78 */ mr r29, r3 /* 80047C70 00044BD0 80 1F 00 00 */ lwz r0, 0(r31) /* 80047C74 00044BD4 54 83 85 BE */ rlwinm r3, r4, 0x10, 0x16, 0x1f /* 80047C78 00044BD8 7C 03 00 00 */ cmpw r3, r0 /* 80047C7C 00044BDC 40 82 00 18 */ bne lbl_80047C94 /* 80047C80 00044BE0 A0 1C 00 14 */ lhz r0, 0x14(r28) /* 80047C84 00044BE4 7F C3 F3 78 */ mr r3, r30 /* 80047C88 00044BE8 38 81 00 10 */ addi r4, r1, 0x10 /* 80047C8C 00044BEC B0 01 00 10 */ sth r0, 0x10(r1) /* 80047C90 00044BF0 48 00 45 DD */ bl FreeScriptObject__13CStateManagerF9TUniqueId lbl_80047C94: /* 80047C94 00044BF4 38 00 00 00 */ li r0, 0 /* 80047C98 00044BF8 7C 1D 00 40 */ cmplw r29, r0 /* 80047C9C 00044BFC 90 01 00 28 */ stw r0, 0x28(r1) /* 80047CA0 00044C00 40 82 00 0C */ bne lbl_80047CAC /* 80047CA4 00044C04 7C 1B D8 40 */ cmplw r27, r27 /* 80047CA8 00044C08 41 82 00 08 */ beq lbl_80047CB0 lbl_80047CAC: /* 80047CAC 00044C0C 38 00 00 01 */ li r0, 1 lbl_80047CB0: /* 80047CB0 00044C10 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80047CB4 00044C14 40 82 FF A4 */ bne lbl_80047C58 /* 80047CB8 00044C18 3B 5E 08 AC */ addi r26, r30, 0x8ac /* 80047CBC 00044C1C 83 9E 08 AC */ lwz r28, 0x8ac(r30) /* 80047CC0 00044C20 93 41 00 34 */ stw r26, 0x34(r1) /* 80047CC4 00044C24 7F 5B D3 78 */ mr r27, r26 /* 80047CC8 00044C28 93 41 00 1C */ stw r26, 0x1c(r1) /* 80047CCC 00044C2C 48 00 00 6C */ b lbl_80047D38 lbl_80047CD0: /* 80047CD0 00044C30 7F 9D E3 78 */ mr r29, r28 /* 80047CD4 00044C34 7F 43 D3 78 */ mr r3, r26 /* 80047CD8 00044C38 7F 84 E3 78 */ mr r4, r28 /* 80047CDC 00044C3C 48 2F 49 05 */ bl rbtree_traverse_forward__4rstlFPCvPv /* 80047CE0 00044C40 80 9D 00 10 */ lwz r4, 0x10(r29) /* 80047CE4 00044C44 7C 7C 1B 78 */ mr r28, r3 /* 80047CE8 00044C48 80 1F 00 00 */ lwz r0, 0(r31) /* 80047CEC 00044C4C 54 83 85 BE */ rlwinm r3, r4, 0x10, 0x16, 0x1f /* 80047CF0 00044C50 93 A1 00 30 */ stw r29, 0x30(r1) /* 80047CF4 00044C54 7C 03 00 00 */ cmpw r3, r0 /* 80047CF8 00044C58 40 82 00 40 */ bne lbl_80047D38 /* 80047CFC 00044C5C 93 A1 00 20 */ stw r29, 0x20(r1) /* 80047D00 00044C60 7F 43 D3 78 */ mr r3, r26 /* 80047D04 00044C64 7F A4 EB 78 */ mr r4, r29 /* 80047D08 00044C68 93 41 00 24 */ stw r26, 0x24(r1) /* 80047D0C 00044C6C 48 2F 48 D5 */ bl rbtree_traverse_forward__4rstlFPCvPv /* 80047D10 00044C70 90 61 00 20 */ stw r3, 0x20(r1) /* 80047D14 00044C74 7F 63 DB 78 */ mr r3, r27 /* 80047D18 00044C78 7F A4 EB 78 */ mr r4, r29 /* 80047D1C 00044C7C 48 2F 49 61 */ bl rbtree_rebalance_for_erase__4rstlFPvPv /* 80047D20 00044C80 28 03 00 00 */ cmplwi r3, 0 /* 80047D24 00044C84 41 82 00 08 */ beq lbl_80047D2C /* 80047D28 00044C88 48 2C DC 09 */ bl Free__7CMemoryFPCv lbl_80047D2C: /* 80047D2C 00044C8C 80 7E 08 A8 */ lwz r3, 0x8a8(r30) /* 80047D30 00044C90 38 03 FF FF */ addi r0, r3, -1 /* 80047D34 00044C94 90 1E 08 A8 */ stw r0, 0x8a8(r30) lbl_80047D38: /* 80047D38 00044C98 38 00 00 00 */ li r0, 0 /* 80047D3C 00044C9C 7C 1C 00 40 */ cmplw r28, r0 /* 80047D40 00044CA0 90 01 00 18 */ stw r0, 0x18(r1) /* 80047D44 00044CA4 40 82 00 0C */ bne lbl_80047D50 /* 80047D48 00044CA8 7C 1A D8 40 */ cmplw r26, r27 /* 80047D4C 00044CAC 41 82 00 08 */ beq lbl_80047D54 lbl_80047D50: /* 80047D50 00044CB0 38 00 00 01 */ li r0, 1 lbl_80047D54: /* 80047D54 00044CB4 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80047D58 00044CB8 40 82 FF 78 */ bne lbl_80047CD0 /* 80047D5C 00044CBC 80 1F 00 00 */ lwz r0, 0(r31) /* 80047D60 00044CC0 80 9E 08 50 */ lwz r4, 0x850(r30) /* 80047D64 00044CC4 54 03 18 38 */ slwi r3, r0, 3 /* 80047D68 00044CC8 90 01 00 14 */ stw r0, 0x14(r1) /* 80047D6C 00044CCC 80 84 00 20 */ lwz r4, 0x20(r4) /* 80047D70 00044CD0 38 03 00 04 */ addi r0, r3, 4 /* 80047D74 00044CD4 7C 64 00 2E */ lwzx r3, r4, r0 /* 80047D78 00044CD8 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 80047D7C 00044CDC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80047D80 00044CE0 41 82 00 70 */ beq lbl_80047DF0 /* 80047D84 00044CE4 80 63 01 2C */ lwz r3, 0x12c(r3) /* 80047D88 00044CE8 83 E3 10 C0 */ lwz r31, 0x10c0(r3) /* 80047D8C 00044CEC AB 5F 20 08 */ lha r26, 0x2008(r31) /* 80047D90 00044CF0 48 00 00 58 */ b lbl_80047DE8 lbl_80047D94: /* 80047D94 00044CF4 7F E3 FB 78 */ mr r3, r31 /* 80047D98 00044CF8 7F 44 D3 78 */ mr r4, r26 /* 80047D9C 00044CFC 4B FC 7F 79 */ bl __vc__11CObjectListFi /* 80047DA0 00044D00 28 03 00 00 */ cmplwi r3, 0 /* 80047DA4 00044D04 41 82 00 28 */ beq lbl_80047DCC /* 80047DA8 00044D08 88 03 00 30 */ lbz r0, 0x30(r3) /* 80047DAC 00044D0C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 80047DB0 00044D10 40 82 00 1C */ bne lbl_80047DCC /* 80047DB4 00044D14 A0 03 00 08 */ lhz r0, 8(r3) /* 80047DB8 00044D18 7F C3 F3 78 */ mr r3, r30 /* 80047DBC 00044D1C 38 81 00 0C */ addi r4, r1, 0xc /* 80047DC0 00044D20 B0 01 00 08 */ sth r0, 8(r1) /* 80047DC4 00044D24 B0 01 00 0C */ sth r0, 0xc(r1) /* 80047DC8 00044D28 48 00 44 A5 */ bl FreeScriptObject__13CStateManagerF9TUniqueId lbl_80047DCC: /* 80047DCC 00044D2C 2C 1A FF FF */ cmpwi r26, -1 /* 80047DD0 00044D30 41 82 00 14 */ beq lbl_80047DE4 /* 80047DD4 00044D34 57 43 18 38 */ slwi r3, r26, 3 /* 80047DD8 00044D38 38 03 00 08 */ addi r0, r3, 8 /* 80047DDC 00044D3C 7F 5F 02 AE */ lhax r26, r31, r0 /* 80047DE0 00044D40 48 00 00 08 */ b lbl_80047DE8 lbl_80047DE4: /* 80047DE4 00044D44 3B 40 FF FF */ li r26, -1 lbl_80047DE8: /* 80047DE8 00044D48 2C 1A FF FF */ cmpwi r26, -1 /* 80047DEC 00044D4C 40 82 FF A8 */ bne lbl_80047D94 lbl_80047DF0: /* 80047DF0 00044D50 BB 41 00 38 */ lmw r26, 0x38(r1) /* 80047DF4 00044D54 80 01 00 54 */ lwz r0, 0x54(r1) /* 80047DF8 00044D58 7C 08 03 A6 */ mtlr r0 /* 80047DFC 00044D5C 38 21 00 50 */ addi r1, r1, 0x50 /* 80047E00 00044D60 4E 80 00 20 */ blr .global GetBuildForScript__13CStateManagerCF9TEditorId GetBuildForScript__13CStateManagerCF9TEditorId: /* 80047E04 00044D64 80 E4 08 B4 */ lwz r7, 0x8b4(r4) /* 80047E08 00044D68 39 00 00 00 */ li r8, 0 /* 80047E0C 00044D6C 48 00 00 2C */ b lbl_80047E38 lbl_80047E10: /* 80047E10 00044D70 80 C7 00 10 */ lwz r6, 0x10(r7) /* 80047E14 00044D74 80 05 00 00 */ lwz r0, 0(r5) /* 80047E18 00044D78 54 C6 01 BE */ clrlwi r6, r6, 6 /* 80047E1C 00044D7C 54 00 01 BE */ clrlwi r0, r0, 6 /* 80047E20 00044D80 7C 06 00 40 */ cmplw r6, r0 /* 80047E24 00044D84 41 80 00 10 */ blt lbl_80047E34 /* 80047E28 00044D88 7C E8 3B 78 */ mr r8, r7 /* 80047E2C 00044D8C 80 E7 00 00 */ lwz r7, 0(r7) /* 80047E30 00044D90 48 00 00 08 */ b lbl_80047E38 lbl_80047E34: /* 80047E34 00044D94 80 E7 00 04 */ lwz r7, 4(r7) lbl_80047E38: /* 80047E38 00044D98 28 07 00 00 */ cmplwi r7, 0 /* 80047E3C 00044D9C 40 82 FF D4 */ bne lbl_80047E10 /* 80047E40 00044DA0 28 08 00 00 */ cmplwi r8, 0 /* 80047E44 00044DA4 38 C0 00 00 */ li r6, 0 /* 80047E48 00044DA8 41 82 00 1C */ beq lbl_80047E64 /* 80047E4C 00044DAC 80 A5 00 00 */ lwz r5, 0(r5) /* 80047E50 00044DB0 80 08 00 10 */ lwz r0, 0x10(r8) /* 80047E54 00044DB4 54 A5 01 BE */ clrlwi r5, r5, 6 /* 80047E58 00044DB8 54 00 01 BE */ clrlwi r0, r0, 6 /* 80047E5C 00044DBC 7C 05 00 40 */ cmplw r5, r0 /* 80047E60 00044DC0 40 80 00 08 */ bge lbl_80047E68 lbl_80047E64: /* 80047E64 00044DC4 38 C0 00 01 */ li r6, 1 lbl_80047E68: /* 80047E68 00044DC8 54 C0 06 3F */ clrlwi. r0, r6, 0x18 /* 80047E6C 00044DCC 41 82 00 08 */ beq lbl_80047E74 /* 80047E70 00044DD0 39 00 00 00 */ li r8, 0 lbl_80047E74: /* 80047E74 00044DD4 28 08 00 00 */ cmplwi r8, 0 /* 80047E78 00044DD8 38 84 08 AC */ addi r4, r4, 0x8ac /* 80047E7C 00044DDC 38 00 00 00 */ li r0, 0 /* 80047E80 00044DE0 40 82 00 0C */ bne lbl_80047E8C /* 80047E84 00044DE4 7C 04 20 40 */ cmplw r4, r4 /* 80047E88 00044DE8 41 82 00 08 */ beq lbl_80047E90 lbl_80047E8C: /* 80047E8C 00044DEC 38 00 00 01 */ li r0, 1 lbl_80047E90: /* 80047E90 00044DF0 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80047E94 00044DF4 41 82 00 18 */ beq lbl_80047EAC /* 80047E98 00044DF8 38 08 00 14 */ addi r0, r8, 0x14 /* 80047E9C 00044DFC 90 03 00 00 */ stw r0, 0(r3) /* 80047EA0 00044E00 80 08 00 10 */ lwz r0, 0x10(r8) /* 80047EA4 00044E04 90 03 00 04 */ stw r0, 4(r3) /* 80047EA8 00044E08 4E 80 00 20 */ blr lbl_80047EAC: /* 80047EAC 00044E0C 38 00 00 00 */ li r0, 0 /* 80047EB0 00044E10 90 03 00 00 */ stw r0, 0(r3) /* 80047EB4 00044E14 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13) /* 80047EB8 00044E18 90 03 00 04 */ stw r0, 4(r3) /* 80047EBC 00044E1C 4E 80 00 20 */ blr .global GetEditorIdForUniqueId__13CStateManagerCF9TUniqueId GetEditorIdForUniqueId__13CStateManagerCF9TUniqueId: /* 80047EC0 00044E20 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80047EC4 00044E24 7C 08 02 A6 */ mflr r0 /* 80047EC8 00044E28 90 01 00 24 */ stw r0, 0x24(r1) /* 80047ECC 00044E2C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80047ED0 00044E30 7C 7F 1B 78 */ mr r31, r3 /* 80047ED4 00044E34 A0 05 00 00 */ lhz r0, 0(r5) /* 80047ED8 00044E38 7C 85 23 78 */ mr r5, r4 /* 80047EDC 00044E3C 38 81 00 08 */ addi r4, r1, 8 /* 80047EE0 00044E40 B0 01 00 08 */ sth r0, 8(r1) /* 80047EE4 00044E44 7C A3 2B 78 */ mr r3, r5 /* 80047EE8 00044E48 48 00 46 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80047EEC 00044E4C 28 03 00 00 */ cmplwi r3, 0 /* 80047EF0 00044E50 41 82 00 10 */ beq lbl_80047F00 /* 80047EF4 00044E54 80 03 00 0C */ lwz r0, 0xc(r3) /* 80047EF8 00044E58 90 1F 00 00 */ stw r0, 0(r31) /* 80047EFC 00044E5C 48 00 00 0C */ b lbl_80047F08 lbl_80047F00: /* 80047F00 00044E60 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13) /* 80047F04 00044E64 90 1F 00 00 */ stw r0, 0(r31) lbl_80047F08: /* 80047F08 00044E68 80 01 00 24 */ lwz r0, 0x24(r1) /* 80047F0C 00044E6C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80047F10 00044E70 7C 08 03 A6 */ mtlr r0 /* 80047F14 00044E74 38 21 00 20 */ addi r1, r1, 0x20 /* 80047F18 00044E78 4E 80 00 20 */ blr .global GetIdForScript__13CStateManagerCF9TEditorId GetIdForScript__13CStateManagerCF9TEditorId: /* 80047F1C 00044E7C 80 E4 08 A0 */ lwz r7, 0x8a0(r4) /* 80047F20 00044E80 39 00 00 00 */ li r8, 0 /* 80047F24 00044E84 48 00 00 2C */ b lbl_80047F50 lbl_80047F28: /* 80047F28 00044E88 80 C7 00 10 */ lwz r6, 0x10(r7) /* 80047F2C 00044E8C 80 05 00 00 */ lwz r0, 0(r5) /* 80047F30 00044E90 54 C6 01 BE */ clrlwi r6, r6, 6 /* 80047F34 00044E94 54 00 01 BE */ clrlwi r0, r0, 6 /* 80047F38 00044E98 7C 06 00 40 */ cmplw r6, r0 /* 80047F3C 00044E9C 41 80 00 10 */ blt lbl_80047F4C /* 80047F40 00044EA0 7C E8 3B 78 */ mr r8, r7 /* 80047F44 00044EA4 80 E7 00 00 */ lwz r7, 0(r7) /* 80047F48 00044EA8 48 00 00 08 */ b lbl_80047F50 lbl_80047F4C: /* 80047F4C 00044EAC 80 E7 00 04 */ lwz r7, 4(r7) lbl_80047F50: /* 80047F50 00044EB0 28 07 00 00 */ cmplwi r7, 0 /* 80047F54 00044EB4 40 82 FF D4 */ bne lbl_80047F28 /* 80047F58 00044EB8 28 08 00 00 */ cmplwi r8, 0 /* 80047F5C 00044EBC 38 C0 00 00 */ li r6, 0 /* 80047F60 00044EC0 41 82 00 1C */ beq lbl_80047F7C /* 80047F64 00044EC4 80 A5 00 00 */ lwz r5, 0(r5) /* 80047F68 00044EC8 80 08 00 10 */ lwz r0, 0x10(r8) /* 80047F6C 00044ECC 54 A5 01 BE */ clrlwi r5, r5, 6 /* 80047F70 00044ED0 54 00 01 BE */ clrlwi r0, r0, 6 /* 80047F74 00044ED4 7C 05 00 40 */ cmplw r5, r0 /* 80047F78 00044ED8 40 80 00 08 */ bge lbl_80047F80 lbl_80047F7C: /* 80047F7C 00044EDC 38 C0 00 01 */ li r6, 1 lbl_80047F80: /* 80047F80 00044EE0 54 C0 06 3F */ clrlwi. r0, r6, 0x18 /* 80047F84 00044EE4 41 82 00 08 */ beq lbl_80047F8C /* 80047F88 00044EE8 39 00 00 00 */ li r8, 0 lbl_80047F8C: /* 80047F8C 00044EEC 28 08 00 00 */ cmplwi r8, 0 /* 80047F90 00044EF0 38 84 08 98 */ addi r4, r4, 0x898 /* 80047F94 00044EF4 38 00 00 00 */ li r0, 0 /* 80047F98 00044EF8 40 82 00 0C */ bne lbl_80047FA4 /* 80047F9C 00044EFC 7C 04 20 40 */ cmplw r4, r4 /* 80047FA0 00044F00 41 82 00 08 */ beq lbl_80047FA8 lbl_80047FA4: /* 80047FA4 00044F04 38 00 00 01 */ li r0, 1 lbl_80047FA8: /* 80047FA8 00044F08 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80047FAC 00044F0C 41 82 00 10 */ beq lbl_80047FBC /* 80047FB0 00044F10 A0 08 00 14 */ lhz r0, 0x14(r8) /* 80047FB4 00044F14 B0 03 00 00 */ sth r0, 0(r3) /* 80047FB8 00044F18 4E 80 00 20 */ blr lbl_80047FBC: /* 80047FBC 00044F1C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80047FC0 00044F20 B0 03 00 00 */ sth r0, 0(r3) /* 80047FC4 00044F24 4E 80 00 20 */ blr .global GetIdListForScript__13CStateManagerCF9TEditorId GetIdListForScript__13CStateManagerCF9TEditorId: /* 80047FC8 00044F28 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80047FCC 00044F2C 7C 08 02 A6 */ mflr r0 /* 80047FD0 00044F30 38 84 08 90 */ addi r4, r4, 0x890 /* 80047FD4 00044F34 90 01 00 24 */ stw r0, 0x24(r1) /* 80047FD8 00044F38 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80047FDC 00044F3C 7C 7F 1B 78 */ mr r31, r3 /* 80047FE0 00044F40 38 61 00 08 */ addi r3, r1, 8 /* 80047FE4 00044F44 48 00 00 39 */ bl sub_8004801c /* 80047FE8 00044F48 80 61 00 0C */ lwz r3, 0xc(r1) /* 80047FEC 00044F4C 80 81 00 10 */ lwz r4, 0x10(r1) /* 80047FF0 00044F50 80 A1 00 14 */ lwz r5, 0x14(r1) /* 80047FF4 00044F54 80 01 00 08 */ lwz r0, 8(r1) /* 80047FF8 00044F58 90 1F 00 00 */ stw r0, 0(r31) /* 80047FFC 00044F5C 90 7F 00 04 */ stw r3, 4(r31) /* 80048000 00044F60 90 9F 00 08 */ stw r4, 8(r31) /* 80048004 00044F64 90 BF 00 0C */ stw r5, 0xc(r31) /* 80048008 00044F68 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004800C 00044F6C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80048010 00044F70 7C 08 03 A6 */ mtlr r0 /* 80048014 00044F74 38 21 00 20 */ addi r1, r1, 0x20 /* 80048018 00044F78 4E 80 00 20 */ blr .global sub_8004801c sub_8004801c: /* 8004801C 00044F7C 81 44 00 10 */ lwz r10, 0x10(r4) /* 80048020 00044F80 38 E0 00 00 */ li r7, 0 /* 80048024 00044F84 7D 48 53 78 */ mr r8, r10 /* 80048028 00044F88 48 00 00 2C */ b lbl_80048054 lbl_8004802C: /* 8004802C 00044F8C 80 C5 00 00 */ lwz r6, 0(r5) /* 80048030 00044F90 80 08 00 10 */ lwz r0, 0x10(r8) /* 80048034 00044F94 54 C6 01 BE */ clrlwi r6, r6, 6 /* 80048038 00044F98 54 00 01 BE */ clrlwi r0, r0, 6 /* 8004803C 00044F9C 7C 06 00 40 */ cmplw r6, r0 /* 80048040 00044FA0 40 80 00 10 */ bge lbl_80048050 /* 80048044 00044FA4 7D 07 43 78 */ mr r7, r8 /* 80048048 00044FA8 81 08 00 00 */ lwz r8, 0(r8) /* 8004804C 00044FAC 48 00 00 08 */ b lbl_80048054 lbl_80048050: /* 80048050 00044FB0 81 08 00 04 */ lwz r8, 4(r8) lbl_80048054: /* 80048054 00044FB4 28 08 00 00 */ cmplwi r8, 0 /* 80048058 00044FB8 40 82 FF D4 */ bne lbl_8004802C /* 8004805C 00044FBC 39 24 00 08 */ addi r9, r4, 8 /* 80048060 00044FC0 39 00 00 00 */ li r8, 0 /* 80048064 00044FC4 48 00 00 2C */ b lbl_80048090 lbl_80048068: /* 80048068 00044FC8 80 CA 00 10 */ lwz r6, 0x10(r10) /* 8004806C 00044FCC 80 05 00 00 */ lwz r0, 0(r5) /* 80048070 00044FD0 54 C6 01 BE */ clrlwi r6, r6, 6 /* 80048074 00044FD4 54 00 01 BE */ clrlwi r0, r0, 6 /* 80048078 00044FD8 7C 06 00 40 */ cmplw r6, r0 /* 8004807C 00044FDC 41 80 00 10 */ blt lbl_8004808C /* 80048080 00044FE0 7D 48 53 78 */ mr r8, r10 /* 80048084 00044FE4 81 4A 00 00 */ lwz r10, 0(r10) /* 80048088 00044FE8 48 00 00 08 */ b lbl_80048090 lbl_8004808C: /* 8004808C 00044FEC 81 4A 00 04 */ lwz r10, 4(r10) lbl_80048090: /* 80048090 00044FF0 28 0A 00 00 */ cmplwi r10, 0 /* 80048094 00044FF4 40 82 FF D4 */ bne lbl_80048068 /* 80048098 00044FF8 91 03 00 00 */ stw r8, 0(r3) /* 8004809C 00044FFC 38 04 00 08 */ addi r0, r4, 8 /* 800480A0 00045000 90 03 00 04 */ stw r0, 4(r3) /* 800480A4 00045004 90 E3 00 08 */ stw r7, 8(r3) /* 800480A8 00045008 91 23 00 0C */ stw r9, 0xc(r3) /* 800480AC 0004500C 4E 80 00 20 */ blr .global "InitScriptObjects__13CStateManagerFRCQ24rstl18vector<9TEditorId>" "InitScriptObjects__13CStateManagerFRCQ24rstl18vector<9TEditorId>": /* 800480B0 00045010 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800480B4 00045014 7C 08 02 A6 */ mflr r0 /* 800480B8 00045018 90 01 00 34 */ stw r0, 0x34(r1) /* 800480BC 0004501C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800480C0 00045020 3B E0 00 00 */ li r31, 0 /* 800480C4 00045024 93 C1 00 28 */ stw r30, 0x28(r1) /* 800480C8 00045028 3B C0 00 00 */ li r30, 0 /* 800480CC 0004502C 93 A1 00 24 */ stw r29, 0x24(r1) /* 800480D0 00045030 7C 9D 23 78 */ mr r29, r4 /* 800480D4 00045034 93 81 00 20 */ stw r28, 0x20(r1) /* 800480D8 00045038 7C 7C 1B 78 */ mr r28, r3 /* 800480DC 0004503C 48 00 00 64 */ b lbl_80048140 lbl_800480E0: /* 800480E0 00045040 80 DD 00 0C */ lwz r6, 0xc(r29) /* 800480E4 00045044 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13) /* 800480E8 00045048 7C 66 F8 2E */ lwzx r3, r6, r31 /* 800480EC 0004504C 54 00 01 BE */ clrlwi r0, r0, 6 /* 800480F0 00045050 54 63 01 BE */ clrlwi r3, r3, 6 /* 800480F4 00045054 7C 03 00 40 */ cmplw r3, r0 /* 800480F8 00045058 41 82 00 40 */ beq lbl_80048138 /* 800480FC 0004505C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80048100 00045060 7F 84 E3 78 */ mr r4, r28 /* 80048104 00045064 38 61 00 0C */ addi r3, r1, 0xc /* 80048108 00045068 38 A1 00 14 */ addi r5, r1, 0x14 /* 8004810C 0004506C B0 01 00 08 */ sth r0, 8(r1) /* 80048110 00045070 7C 06 F8 2E */ lwzx r0, r6, r31 /* 80048114 00045074 90 01 00 14 */ stw r0, 0x14(r1) /* 80048118 00045078 4B FF FE 05 */ bl GetIdForScript__13CStateManagerCF9TEditorId /* 8004811C 0004507C A0 01 00 0C */ lhz r0, 0xc(r1) /* 80048120 00045080 7F 83 E3 78 */ mr r3, r28 /* 80048124 00045084 38 81 00 10 */ addi r4, r1, 0x10 /* 80048128 00045088 38 A1 00 08 */ addi r5, r1, 8 /* 8004812C 0004508C B0 01 00 10 */ sth r0, 0x10(r1) /* 80048130 00045090 38 C0 00 23 */ li r6, 0x23 /* 80048134 00045094 4B FF BD 21 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId lbl_80048138: /* 80048138 00045098 3B FF 00 04 */ addi r31, r31, 4 /* 8004813C 0004509C 3B DE 00 01 */ addi r30, r30, 1 lbl_80048140: /* 80048140 000450A0 80 1D 00 04 */ lwz r0, 4(r29) /* 80048144 000450A4 7C 1E 00 00 */ cmpw r30, r0 /* 80048148 000450A8 41 80 FF 98 */ blt lbl_800480E0 /* 8004814C 000450AC 7F 83 E3 78 */ mr r3, r28 /* 80048150 000450B0 4B FF CF 6D */ bl MurderScriptInstanceNames__13CStateManagerFv /* 80048154 000450B4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80048158 000450B8 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8004815C 000450BC 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80048160 000450C0 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80048164 000450C4 83 81 00 20 */ lwz r28, 0x20(r1) /* 80048168 000450C8 7C 08 03 A6 */ mtlr r0 /* 8004816C 000450CC 38 21 00 30 */ addi r1, r1, 0x30 /* 80048170 000450D0 4E 80 00 20 */ blr .global LoadScriptObjects__13CStateManagerF7TAreaIdR12CInputStreamQ213CStateManager18EScriptPersistence LoadScriptObjects__13CStateManagerF7TAreaIdR12CInputStreamQ213CStateManager18EScriptPersistence: /* 80048174 000450D4 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80048178 000450D8 7C 08 02 A6 */ mflr r0 /* 8004817C 000450DC 90 01 00 74 */ stw r0, 0x74(r1) /* 80048180 000450E0 BF 41 00 58 */ stmw r26, 0x58(r1) /* 80048184 000450E4 7C BD 2B 78 */ mr r29, r5 /* 80048188 000450E8 7C 7B 1B 78 */ mr r27, r3 /* 8004818C 000450EC 7C 9C 23 78 */ mr r28, r4 /* 80048190 000450F0 7C DE 33 78 */ mr r30, r6 /* 80048194 000450F4 7F A3 EB 78 */ mr r3, r29 /* 80048198 000450F8 48 2F 6B 75 */ bl ReadChar__12CInputStreamFv /* 8004819C 000450FC 7F A3 EB 78 */ mr r3, r29 /* 800481A0 00045100 48 2F 6A E5 */ bl ReadLong__12CInputStreamFv /* 800481A4 00045104 80 1E 00 04 */ lwz r0, 4(r30) /* 800481A8 00045108 7C 64 1B 78 */ mr r4, r3 /* 800481AC 0004510C 7C 9F 23 78 */ mr r31, r4 /* 800481B0 00045110 7F C3 F3 78 */ mr r3, r30 /* 800481B4 00045114 7C 84 02 14 */ add r4, r4, r0 /* 800481B8 00045118 48 00 81 91 */ bl "reserve__Q24rstl45vector<9TEditorId,Q24rstl17rmemory_allocator>Fi" /* 800481BC 0004511C 48 00 01 0C */ b lbl_800482C8 lbl_800481C0: /* 800481C0 00045120 7F A3 EB 78 */ mr r3, r29 /* 800481C4 00045124 48 2F 6B 49 */ bl ReadChar__12CInputStreamFv /* 800481C8 00045128 7C 7A 1B 78 */ mr r26, r3 /* 800481CC 0004512C 7F A3 EB 78 */ mr r3, r29 /* 800481D0 00045130 48 2F 6A B5 */ bl ReadLong__12CInputStreamFv /* 800481D4 00045134 80 BD 00 18 */ lwz r5, 0x18(r29) /* 800481D8 00045138 7C 67 1B 78 */ mr r7, r3 /* 800481DC 0004513C 80 1C 00 00 */ lwz r0, 0(r28) /* 800481E0 00045140 57 46 06 3E */ clrlwi r6, r26, 0x18 /* 800481E4 00045144 90 A1 00 44 */ stw r5, 0x44(r1) /* 800481E8 00045148 7F 64 DB 78 */ mr r4, r27 /* 800481EC 0004514C 7F A8 EB 78 */ mr r8, r29 /* 800481F0 00045150 38 61 00 1C */ addi r3, r1, 0x1c /* 800481F4 00045154 90 C1 00 40 */ stw r6, 0x40(r1) /* 800481F8 00045158 38 A1 00 0C */ addi r5, r1, 0xc /* 800481FC 0004515C 90 E1 00 48 */ stw r7, 0x48(r1) /* 80048200 00045160 90 01 00 0C */ stw r0, 0xc(r1) /* 80048204 00045164 48 00 02 09 */ bl LoadScriptObject__13CStateManagerF7TAreaId17EScriptObjectTypeUiR12CInputStream /* 80048208 00045168 80 81 00 1C */ lwz r4, 0x1c(r1) /* 8004820C 0004516C 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13) /* 80048210 00045170 54 83 01 BE */ clrlwi r3, r4, 6 /* 80048214 00045174 90 81 00 10 */ stw r4, 0x10(r1) /* 80048218 00045178 54 00 01 BE */ clrlwi r0, r0, 6 /* 8004821C 0004517C 7C 03 00 40 */ cmplw r3, r0 /* 80048220 00045180 41 82 00 A8 */ beq lbl_800482C8 /* 80048224 00045184 90 81 00 08 */ stw r4, 8(r1) /* 80048228 00045188 7F 64 DB 78 */ mr r4, r27 /* 8004822C 0004518C 38 61 00 14 */ addi r3, r1, 0x14 /* 80048230 00045190 38 A1 00 08 */ addi r5, r1, 8 /* 80048234 00045194 4B FF FB D1 */ bl GetBuildForScript__13CStateManagerCF9TEditorId /* 80048238 00045198 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004823C 0004519C 28 00 00 00 */ cmplwi r0, 0 /* 80048240 000451A0 40 82 00 88 */ bne lbl_800482C8 /* 80048244 000451A4 81 01 00 10 */ lwz r8, 0x10(r1) /* 80048248 000451A8 38 61 00 24 */ addi r3, r1, 0x24 /* 8004824C 000451AC 80 E1 00 40 */ lwz r7, 0x40(r1) /* 80048250 000451B0 38 9B 08 A4 */ addi r4, r27, 0x8a4 /* 80048254 000451B4 80 A1 00 44 */ lwz r5, 0x44(r1) /* 80048258 000451B8 38 C1 00 30 */ addi r6, r1, 0x30 /* 8004825C 000451BC 80 01 00 48 */ lwz r0, 0x48(r1) /* 80048260 000451C0 91 01 00 30 */ stw r8, 0x30(r1) /* 80048264 000451C4 90 E1 00 34 */ stw r7, 0x34(r1) /* 80048268 000451C8 90 A1 00 38 */ stw r5, 0x38(r1) /* 8004826C 000451CC 90 01 00 3C */ stw r0, 0x3c(r1) /* 80048270 000451D0 80 BB 08 B4 */ lwz r5, 0x8b4(r27) /* 80048274 000451D4 48 00 7C 51 */ bl "insert_into__Q24rstl197red_black_tree<9TEditorId,Q24rstl38pair<9TEditorId,19SScriptObjectStream>,0,Q24rstl58select1st>,Q24rstl16less<9TEditorId>,Q24rstl17rmemory_allocator>FPQ34rstl197red_black_tree<9TEditorId,Q24rstl38pair<9TEditorId,19SScriptObjectStream>,0,Q24rstl58select1st>,Q24rstl16less<9TEditorId>,Q24rstl17rmemory_allocator>4nodeRCQ24rstl38pair<9TEditorId,19SScriptObjectStream>" /* 80048278 000451D8 80 1E 00 04 */ lwz r0, 4(r30) /* 8004827C 000451DC 80 BE 00 08 */ lwz r5, 8(r30) /* 80048280 000451E0 7C 00 28 00 */ cmpw r0, r5 /* 80048284 000451E4 41 80 00 1C */ blt lbl_800482A0 /* 80048288 000451E8 2C 05 00 00 */ cmpwi r5, 0 /* 8004828C 000451EC 7F C3 F3 78 */ mr r3, r30 /* 80048290 000451F0 38 80 00 04 */ li r4, 4 /* 80048294 000451F4 41 82 00 08 */ beq lbl_8004829C /* 80048298 000451F8 54 A4 08 3C */ slwi r4, r5, 1 lbl_8004829C: /* 8004829C 000451FC 48 00 80 AD */ bl "reserve__Q24rstl45vector<9TEditorId,Q24rstl17rmemory_allocator>Fi" lbl_800482A0: /* 800482A0 00045200 80 1E 00 04 */ lwz r0, 4(r30) /* 800482A4 00045204 80 7E 00 0C */ lwz r3, 0xc(r30) /* 800482A8 00045208 54 00 10 3A */ slwi r0, r0, 2 /* 800482AC 0004520C 7C 63 02 15 */ add. r3, r3, r0 /* 800482B0 00045210 41 82 00 0C */ beq lbl_800482BC /* 800482B4 00045214 80 01 00 10 */ lwz r0, 0x10(r1) /* 800482B8 00045218 90 03 00 00 */ stw r0, 0(r3) lbl_800482BC: /* 800482BC 0004521C 80 7E 00 04 */ lwz r3, 4(r30) /* 800482C0 00045220 38 03 00 01 */ addi r0, r3, 1 /* 800482C4 00045224 90 1E 00 04 */ stw r0, 4(r30) lbl_800482C8: /* 800482C8 00045228 2C 1F 00 00 */ cmpwi r31, 0 /* 800482CC 0004522C 3B FF FF FF */ addi r31, r31, -1 /* 800482D0 00045230 40 82 FE F0 */ bne lbl_800481C0 /* 800482D4 00045234 BB 41 00 58 */ lmw r26, 0x58(r1) /* 800482D8 00045238 80 01 00 74 */ lwz r0, 0x74(r1) /* 800482DC 0004523C 7C 08 03 A6 */ mtlr r0 /* 800482E0 00045240 38 21 00 70 */ addi r1, r1, 0x70 /* 800482E4 00045244 4E 80 00 20 */ blr .global GenerateObject__13CStateManagerF9TEditorId GenerateObject__13CStateManagerF9TEditorId: /* 800482E8 00045248 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800482EC 0004524C 7C 08 02 A6 */ mflr r0 /* 800482F0 00045250 90 01 00 74 */ stw r0, 0x74(r1) /* 800482F4 00045254 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800482F8 00045258 7C 9F 23 78 */ mr r31, r4 /* 800482FC 0004525C 93 C1 00 68 */ stw r30, 0x68(r1) /* 80048300 00045260 7C 7E 1B 78 */ mr r30, r3 /* 80048304 00045264 38 61 00 34 */ addi r3, r1, 0x34 /* 80048308 00045268 93 A1 00 64 */ stw r29, 0x64(r1) /* 8004830C 0004526C 93 81 00 60 */ stw r28, 0x60(r1) /* 80048310 00045270 80 05 00 00 */ lwz r0, 0(r5) /* 80048314 00045274 38 A1 00 28 */ addi r5, r1, 0x28 /* 80048318 00045278 90 01 00 28 */ stw r0, 0x28(r1) /* 8004831C 0004527C 4B FF FA E9 */ bl GetBuildForScript__13CStateManagerCF9TEditorId /* 80048320 00045280 83 81 00 34 */ lwz r28, 0x34(r1) /* 80048324 00045284 80 A1 00 38 */ lwz r5, 0x38(r1) /* 80048328 00045288 28 1C 00 00 */ cmplwi r28, 0 /* 8004832C 0004528C 80 7F 08 50 */ lwz r3, 0x850(r31) /* 80048330 00045290 54 BD 85 BE */ rlwinm r29, r5, 0x10, 0x16, 0x1f /* 80048334 00045294 41 82 00 A8 */ beq lbl_800483DC /* 80048338 00045298 80 C3 00 20 */ lwz r6, 0x20(r3) /* 8004833C 0004529C 57 A4 18 38 */ slwi r4, r29, 3 /* 80048340 000452A0 93 A1 00 20 */ stw r29, 0x20(r1) /* 80048344 000452A4 7C 66 22 14 */ add r3, r6, r4 /* 80048348 000452A8 80 63 00 04 */ lwz r3, 4(r3) /* 8004834C 000452AC 93 A1 00 24 */ stw r29, 0x24(r1) /* 80048350 000452B0 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 80048354 000452B4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80048358 000452B8 41 82 00 84 */ beq lbl_800483DC /* 8004835C 000452BC 38 64 00 04 */ addi r3, r4, 4 /* 80048360 000452C0 54 A0 36 BE */ srwi r0, r5, 0x1a /* 80048364 000452C4 7C 86 18 2E */ lwzx r4, r6, r3 /* 80048368 000452C8 38 61 00 2C */ addi r3, r1, 0x2c /* 8004836C 000452CC 93 A1 00 18 */ stw r29, 0x18(r1) /* 80048370 000452D0 38 A1 00 14 */ addi r5, r1, 0x14 /* 80048374 000452D4 93 A1 00 1C */ stw r29, 0x1c(r1) /* 80048378 000452D8 90 01 00 10 */ stw r0, 0x10(r1) /* 8004837C 000452DC 90 01 00 14 */ stw r0, 0x14(r1) /* 80048380 000452E0 48 01 5F 6D */ bl GetLayerScriptBuffer__9CGameAreaFi /* 80048384 000452E4 80 81 00 2C */ lwz r4, 0x2c(r1) /* 80048388 000452E8 38 61 00 3C */ addi r3, r1, 0x3c /* 8004838C 000452EC 80 1C 00 04 */ lwz r0, 4(r28) /* 80048390 000452F0 80 BC 00 08 */ lwz r5, 8(r28) /* 80048394 000452F4 7C 84 02 14 */ add r4, r4, r0 /* 80048398 000452F8 48 2F 6E 35 */ bl __ct__15CMemoryInStreamFPCvUl /* 8004839C 000452FC 93 A1 00 0C */ stw r29, 0xc(r1) /* 800483A0 00045300 7F C3 F3 78 */ mr r3, r30 /* 800483A4 00045304 7F E4 FB 78 */ mr r4, r31 /* 800483A8 00045308 38 A1 00 0C */ addi r5, r1, 0xc /* 800483AC 0004530C 93 A1 00 08 */ stw r29, 8(r1) /* 800483B0 00045310 39 01 00 3C */ addi r8, r1, 0x3c /* 800483B4 00045314 80 DC 00 00 */ lwz r6, 0(r28) /* 800483B8 00045318 80 FC 00 08 */ lwz r7, 8(r28) /* 800483BC 0004531C 48 00 00 51 */ bl LoadScriptObject__13CStateManagerF7TAreaId17EScriptObjectTypeUiR12CInputStream /* 800483C0 00045320 3C 80 80 3F */ lis r4, __vt__15CMemoryInStream@ha /* 800483C4 00045324 38 61 00 3C */ addi r3, r1, 0x3c /* 800483C8 00045328 38 04 E3 98 */ addi r0, r4, __vt__15CMemoryInStream@l /* 800483CC 0004532C 38 80 00 00 */ li r4, 0 /* 800483D0 00045330 90 01 00 3C */ stw r0, 0x3c(r1) /* 800483D4 00045334 48 2F 6C D9 */ bl __dt__12CInputStreamFv /* 800483D8 00045338 48 00 00 14 */ b lbl_800483EC lbl_800483DC: /* 800483DC 0004533C 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13) /* 800483E0 00045340 90 1E 00 00 */ stw r0, 0(r30) /* 800483E4 00045344 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800483E8 00045348 B0 1E 00 04 */ sth r0, 4(r30) lbl_800483EC: /* 800483EC 0004534C 80 01 00 74 */ lwz r0, 0x74(r1) /* 800483F0 00045350 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 800483F4 00045354 83 C1 00 68 */ lwz r30, 0x68(r1) /* 800483F8 00045358 83 A1 00 64 */ lwz r29, 0x64(r1) /* 800483FC 0004535C 83 81 00 60 */ lwz r28, 0x60(r1) /* 80048400 00045360 7C 08 03 A6 */ mtlr r0 /* 80048404 00045364 38 21 00 70 */ addi r1, r1, 0x70 /* 80048408 00045368 4E 80 00 20 */ blr .global LoadScriptObject__13CStateManagerF7TAreaId17EScriptObjectTypeUiR12CInputStream LoadScriptObject__13CStateManagerF7TAreaId17EScriptObjectTypeUiR12CInputStream: /* 8004840C 0004536C 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 80048410 00045370 7C 08 02 A6 */ mflr r0 /* 80048414 00045374 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80048418 00045378 BE A1 00 84 */ stmw r21, 0x84(r1) /* 8004841C 0004537C 7D 1B 43 78 */ mr r27, r8 /* 80048420 00045380 7C 77 1B 78 */ mr r23, r3 /* 80048424 00045384 7C 98 23 78 */ mr r24, r4 /* 80048428 00045388 7C B9 2B 78 */ mr r25, r5 /* 8004842C 0004538C 7C DA 33 78 */ mr r26, r6 /* 80048430 00045390 7C F5 3B 78 */ mr r21, r7 /* 80048434 00045394 7F 63 DB 78 */ mr r3, r27 /* 80048438 00045398 3B A0 00 00 */ li r29, 0 /* 8004843C 0004539C 48 2F 68 49 */ bl ReadLong__12CInputStreamFv /* 80048440 000453A0 38 00 00 00 */ li r0, 0 /* 80048444 000453A4 90 61 00 48 */ stw r3, 0x48(r1) /* 80048448 000453A8 7F 63 DB 78 */ mr r3, r27 /* 8004844C 000453AC 90 01 00 5C */ stw r0, 0x5c(r1) /* 80048450 000453B0 90 01 00 60 */ stw r0, 0x60(r1) /* 80048454 000453B4 90 01 00 64 */ stw r0, 0x64(r1) /* 80048458 000453B8 48 2F 68 2D */ bl ReadLong__12CInputStreamFv /* 8004845C 000453BC 7C 7F 1B 78 */ mr r31, r3 /* 80048460 000453C0 38 61 00 58 */ addi r3, r1, 0x58 /* 80048464 000453C4 3B D5 FF F8 */ addi r30, r21, -8 /* 80048468 000453C8 7F E4 FB 78 */ mr r4, r31 /* 8004846C 000453CC 48 00 7F C9 */ bl "reserve__Q24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>Fi" /* 80048470 000453D0 3B 80 00 00 */ li r28, 0 /* 80048474 000453D4 48 00 00 A0 */ b lbl_80048514 lbl_80048478: /* 80048478 000453D8 7F 63 DB 78 */ mr r3, r27 /* 8004847C 000453DC 48 2F 68 09 */ bl ReadLong__12CInputStreamFv /* 80048480 000453E0 7C 75 1B 78 */ mr r21, r3 /* 80048484 000453E4 7F 63 DB 78 */ mr r3, r27 /* 80048488 000453E8 48 2F 67 FD */ bl ReadLong__12CInputStreamFv /* 8004848C 000453EC 7C 76 1B 78 */ mr r22, r3 /* 80048490 000453F0 7F 63 DB 78 */ mr r3, r27 /* 80048494 000453F4 48 2F 67 F1 */ bl ReadLong__12CInputStreamFv /* 80048498 000453F8 80 01 00 5C */ lwz r0, 0x5c(r1) /* 8004849C 000453FC 3B DE FF F4 */ addi r30, r30, -12 /* 800484A0 00045400 80 A1 00 60 */ lwz r5, 0x60(r1) /* 800484A4 00045404 90 61 00 44 */ stw r3, 0x44(r1) /* 800484A8 00045408 7C 00 28 00 */ cmpw r0, r5 /* 800484AC 0004540C 90 61 00 40 */ stw r3, 0x40(r1) /* 800484B0 00045410 92 A1 00 4C */ stw r21, 0x4c(r1) /* 800484B4 00045414 92 C1 00 50 */ stw r22, 0x50(r1) /* 800484B8 00045418 90 61 00 54 */ stw r3, 0x54(r1) /* 800484BC 0004541C 41 80 00 1C */ blt lbl_800484D8 /* 800484C0 00045420 2C 05 00 00 */ cmpwi r5, 0 /* 800484C4 00045424 38 61 00 58 */ addi r3, r1, 0x58 /* 800484C8 00045428 38 80 00 04 */ li r4, 4 /* 800484CC 0004542C 41 82 00 08 */ beq lbl_800484D4 /* 800484D0 00045430 54 A4 08 3C */ slwi r4, r5, 1 lbl_800484D4: /* 800484D4 00045434 48 00 7F 61 */ bl "reserve__Q24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>Fi" lbl_800484D8: /* 800484D8 00045438 80 01 00 5C */ lwz r0, 0x5c(r1) /* 800484DC 0004543C 80 61 00 64 */ lwz r3, 0x64(r1) /* 800484E0 00045440 1C 00 00 0C */ mulli r0, r0, 0xc /* 800484E4 00045444 7C 83 02 15 */ add. r4, r3, r0 /* 800484E8 00045448 41 82 00 1C */ beq lbl_80048504 /* 800484EC 0004544C 80 01 00 4C */ lwz r0, 0x4c(r1) /* 800484F0 00045450 80 61 00 50 */ lwz r3, 0x50(r1) /* 800484F4 00045454 90 04 00 00 */ stw r0, 0(r4) /* 800484F8 00045458 80 01 00 54 */ lwz r0, 0x54(r1) /* 800484FC 0004545C 90 64 00 04 */ stw r3, 4(r4) /* 80048500 00045460 90 04 00 08 */ stw r0, 8(r4) lbl_80048504: /* 80048504 00045464 80 61 00 5C */ lwz r3, 0x5c(r1) /* 80048508 00045468 3B 9C 00 01 */ addi r28, r28, 1 /* 8004850C 0004546C 38 03 00 01 */ addi r0, r3, 1 /* 80048510 00045470 90 01 00 5C */ stw r0, 0x5c(r1) lbl_80048514: /* 80048514 00045474 7C 1C F8 00 */ cmpw r28, r31 /* 80048518 00045478 41 80 FF 60 */ blt lbl_80048478 /* 8004851C 0004547C 7F 63 DB 78 */ mr r3, r27 /* 80048520 00045480 48 2F 67 65 */ bl ReadLong__12CInputStreamFv /* 80048524 00045484 2C 1A 00 8B */ cmpwi r26, 0x8b /* 80048528 00045488 83 FB 00 18 */ lwz r31, 0x18(r27) /* 8004852C 0004548C 7C 75 1B 78 */ mr r21, r3 /* 80048530 00045490 3B 80 00 00 */ li r28, 0 /* 80048534 00045494 3A C0 00 00 */ li r22, 0 /* 80048538 00045498 3B DE FF FC */ addi r30, r30, -4 /* 8004853C 0004549C 41 81 00 18 */ bgt lbl_80048554 /* 80048540 000454A0 2C 1A 00 00 */ cmpwi r26, 0 /* 80048544 000454A4 41 80 00 10 */ blt lbl_80048554 /* 80048548 000454A8 57 40 10 3A */ slwi r0, r26, 2 /* 8004854C 000454AC 7C 78 02 14 */ add r3, r24, r0 /* 80048550 000454B0 82 C3 09 0C */ lwz r22, 0x90c(r3) lbl_80048554: /* 80048554 000454B4 28 16 00 00 */ cmplwi r22, 0 /* 80048558 000454B8 41 82 00 90 */ beq lbl_800485E8 /* 8004855C 000454BC 80 A1 00 48 */ lwz r5, 0x48(r1) /* 80048560 000454C0 38 61 00 68 */ addi r3, r1, 0x68 /* 80048564 000454C4 80 19 00 00 */ lwz r0, 0(r25) /* 80048568 000454C8 38 81 00 3C */ addi r4, r1, 0x3c /* 8004856C 000454CC 90 A1 00 38 */ stw r5, 0x38(r1) /* 80048570 000454D0 38 A1 00 58 */ addi r5, r1, 0x58 /* 80048574 000454D4 38 C1 00 38 */ addi r6, r1, 0x38 /* 80048578 000454D8 90 01 00 3C */ stw r0, 0x3c(r1) /* 8004857C 000454DC 48 00 8F 09 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" /* 80048580 000454E0 7E CC B3 78 */ mr r12, r22 /* 80048584 000454E4 7F 03 C3 78 */ mr r3, r24 /* 80048588 000454E8 7F 64 DB 78 */ mr r4, r27 /* 8004858C 000454EC 7E A5 AB 78 */ mr r5, r21 /* 80048590 000454F0 38 C1 00 68 */ addi r6, r1, 0x68 /* 80048594 000454F4 7D 89 03 A6 */ mtctr r12 /* 80048598 000454F8 4E 80 04 21 */ bctrl /* 8004859C 000454FC 80 01 00 70 */ lwz r0, 0x70(r1) /* 800485A0 00045500 7C 7C 1B 78 */ mr r28, r3 /* 800485A4 00045504 80 81 00 78 */ lwz r4, 0x78(r1) /* 800485A8 00045508 1C 00 00 0C */ mulli r0, r0, 0xc /* 800485AC 0004550C 90 81 00 0C */ stw r4, 0xc(r1) /* 800485B0 00045510 7C 83 23 78 */ mr r3, r4 /* 800485B4 00045514 7C 04 02 14 */ add r0, r4, r0 /* 800485B8 00045518 90 81 00 08 */ stw r4, 8(r1) /* 800485BC 0004551C 90 01 00 14 */ stw r0, 0x14(r1) /* 800485C0 00045520 90 01 00 10 */ stw r0, 0x10(r1) /* 800485C4 00045524 48 00 00 08 */ b lbl_800485CC lbl_800485C8: /* 800485C8 00045528 38 63 00 0C */ addi r3, r3, 0xc lbl_800485CC: /* 800485CC 0004552C 7C 03 00 40 */ cmplw r3, r0 /* 800485D0 00045530 40 82 FF F8 */ bne lbl_800485C8 /* 800485D4 00045534 28 04 00 00 */ cmplwi r4, 0 /* 800485D8 00045538 41 82 00 14 */ beq lbl_800485EC /* 800485DC 0004553C 7C 83 23 78 */ mr r3, r4 /* 800485E0 00045540 48 2C D3 51 */ bl Free__7CMemoryFPCv /* 800485E4 00045544 48 00 00 08 */ b lbl_800485EC lbl_800485E8: /* 800485E8 00045548 3B A0 00 01 */ li r29, 1 lbl_800485EC: /* 800485EC 0004554C 28 1C 00 00 */ cmplwi r28, 0 /* 800485F0 00045550 41 82 00 14 */ beq lbl_80048604 /* 800485F4 00045554 7F 03 C3 78 */ mr r3, r24 /* 800485F8 00045558 7F 84 E3 78 */ mr r4, r28 /* 800485FC 0004555C 48 00 45 19 */ bl AddObject__13CStateManagerFR7CEntity /* 80048600 00045560 48 00 00 08 */ b lbl_80048608 lbl_80048604: /* 80048604 00045564 3B A0 00 01 */ li r29, 1 lbl_80048608: /* 80048608 00045568 80 1B 00 18 */ lwz r0, 0x18(r27) /* 8004860C 0004556C 7C 1F 00 50 */ subf r0, r31, r0 /* 80048610 00045570 7F C0 F0 51 */ subf. r30, r0, r30 /* 80048614 00045574 41 82 00 1C */ beq lbl_80048630 /* 80048618 00045578 48 00 00 0C */ b lbl_80048624 lbl_8004861C: /* 8004861C 0004557C 7F 63 DB 78 */ mr r3, r27 /* 80048620 00045580 48 2F 66 ED */ bl ReadChar__12CInputStreamFv lbl_80048624: /* 80048624 00045584 28 1E 00 00 */ cmplwi r30, 0 /* 80048628 00045588 3B DE FF FF */ addi r30, r30, -1 /* 8004862C 0004558C 40 82 FF F0 */ bne lbl_8004861C lbl_80048630: /* 80048630 00045590 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 80048634 00045594 40 82 00 0C */ bne lbl_80048640 /* 80048638 00045598 28 1C 00 00 */ cmplwi r28, 0 /* 8004863C 0004559C 40 82 00 58 */ bne lbl_80048694 lbl_80048640: /* 80048640 000455A0 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13) /* 80048644 000455A4 90 17 00 00 */ stw r0, 0(r23) /* 80048648 000455A8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004864C 000455AC B0 17 00 04 */ sth r0, 4(r23) /* 80048650 000455B0 80 01 00 5C */ lwz r0, 0x5c(r1) /* 80048654 000455B4 80 61 00 64 */ lwz r3, 0x64(r1) /* 80048658 000455B8 1C 00 00 0C */ mulli r0, r0, 0xc /* 8004865C 000455BC 90 61 00 2C */ stw r3, 0x2c(r1) /* 80048660 000455C0 7C 64 1B 78 */ mr r4, r3 /* 80048664 000455C4 7C 03 02 14 */ add r0, r3, r0 /* 80048668 000455C8 90 61 00 28 */ stw r3, 0x28(r1) /* 8004866C 000455CC 90 01 00 34 */ stw r0, 0x34(r1) /* 80048670 000455D0 90 01 00 30 */ stw r0, 0x30(r1) /* 80048674 000455D4 48 00 00 08 */ b lbl_8004867C lbl_80048678: /* 80048678 000455D8 38 84 00 0C */ addi r4, r4, 0xc lbl_8004867C: /* 8004867C 000455DC 7C 04 00 40 */ cmplw r4, r0 /* 80048680 000455E0 40 82 FF F8 */ bne lbl_80048678 /* 80048684 000455E4 28 03 00 00 */ cmplwi r3, 0 /* 80048688 000455E8 41 82 00 5C */ beq lbl_800486E4 /* 8004868C 000455EC 48 2C D2 A5 */ bl Free__7CMemoryFPCv /* 80048690 000455F0 48 00 00 54 */ b lbl_800486E4 lbl_80048694: /* 80048694 000455F4 A0 7C 00 08 */ lhz r3, 8(r28) /* 80048698 000455F8 80 01 00 48 */ lwz r0, 0x48(r1) /* 8004869C 000455FC 90 17 00 00 */ stw r0, 0(r23) /* 800486A0 00045600 B0 77 00 04 */ sth r3, 4(r23) /* 800486A4 00045604 80 01 00 5C */ lwz r0, 0x5c(r1) /* 800486A8 00045608 80 61 00 64 */ lwz r3, 0x64(r1) /* 800486AC 0004560C 1C 00 00 0C */ mulli r0, r0, 0xc /* 800486B0 00045610 90 61 00 1C */ stw r3, 0x1c(r1) /* 800486B4 00045614 7C 64 1B 78 */ mr r4, r3 /* 800486B8 00045618 7C 03 02 14 */ add r0, r3, r0 /* 800486BC 0004561C 90 61 00 18 */ stw r3, 0x18(r1) /* 800486C0 00045620 90 01 00 24 */ stw r0, 0x24(r1) /* 800486C4 00045624 90 01 00 20 */ stw r0, 0x20(r1) /* 800486C8 00045628 48 00 00 08 */ b lbl_800486D0 lbl_800486CC: /* 800486CC 0004562C 38 84 00 0C */ addi r4, r4, 0xc lbl_800486D0: /* 800486D0 00045630 7C 04 00 40 */ cmplw r4, r0 /* 800486D4 00045634 40 82 FF F8 */ bne lbl_800486CC /* 800486D8 00045638 28 03 00 00 */ cmplwi r3, 0 /* 800486DC 0004563C 41 82 00 08 */ beq lbl_800486E4 /* 800486E0 00045640 48 2C D2 51 */ bl Free__7CMemoryFPCv lbl_800486E4: /* 800486E4 00045644 BA A1 00 84 */ lmw r21, 0x84(r1) /* 800486E8 00045648 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 800486EC 0004564C 7C 08 03 A6 */ mtlr r0 /* 800486F0 00045650 38 21 00 B0 */ addi r1, r1, 0xb0 .global sub_800486f4 sub_800486f4: /* 800486F4 00045654 4E 80 00 20 */ blr .global "__dt__Q24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>Fv" "__dt__Q24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>Fv": /* 800486F8 00045658 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800486FC 0004565C 7C 08 02 A6 */ mflr r0 /* 80048700 00045660 90 01 00 24 */ stw r0, 0x24(r1) /* 80048704 00045664 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80048708 00045668 7C 9F 23 78 */ mr r31, r4 /* 8004870C 0004566C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80048710 00045670 7C 7E 1B 79 */ or. r30, r3, r3 /* 80048714 00045674 41 82 00 54 */ beq lbl_80048768 /* 80048718 00045678 80 1E 00 04 */ lwz r0, 4(r30) /* 8004871C 0004567C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80048720 00045680 1C 00 00 0C */ mulli r0, r0, 0xc /* 80048724 00045684 90 61 00 10 */ stw r3, 0x10(r1) /* 80048728 00045688 7C 64 1B 78 */ mr r4, r3 /* 8004872C 0004568C 7C 03 02 14 */ add r0, r3, r0 /* 80048730 00045690 90 61 00 14 */ stw r3, 0x14(r1) /* 80048734 00045694 90 01 00 08 */ stw r0, 8(r1) /* 80048738 00045698 90 01 00 0C */ stw r0, 0xc(r1) /* 8004873C 0004569C 48 00 00 08 */ b lbl_80048744 lbl_80048740: /* 80048740 000456A0 38 84 00 0C */ addi r4, r4, 0xc lbl_80048744: /* 80048744 000456A4 7C 04 00 40 */ cmplw r4, r0 /* 80048748 000456A8 40 82 FF F8 */ bne lbl_80048740 /* 8004874C 000456AC 28 03 00 00 */ cmplwi r3, 0 /* 80048750 000456B0 41 82 00 08 */ beq lbl_80048758 /* 80048754 000456B4 48 2C D1 DD */ bl Free__7CMemoryFPCv lbl_80048758: /* 80048758 000456B8 7F E0 07 35 */ extsh. r0, r31 /* 8004875C 000456BC 40 81 00 0C */ ble lbl_80048768 /* 80048760 000456C0 7F C3 F3 78 */ mr r3, r30 /* 80048764 000456C4 48 2C D1 CD */ bl Free__7CMemoryFPCv lbl_80048768: /* 80048768 000456C8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004876C 000456CC 7F C3 F3 78 */ mr r3, r30 /* 80048770 000456D0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80048774 000456D4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80048778 000456D8 7C 08 03 A6 */ mtlr r0 /* 8004877C 000456DC 38 21 00 20 */ addi r1, r1, 0x20 /* 80048780 000456E0 4E 80 00 20 */ blr .global InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType: /* 80048784 000456E4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80048788 000456E8 7C 08 02 A6 */ mflr r0 /* 8004878C 000456EC 90 01 00 34 */ stw r0, 0x34(r1) /* 80048790 000456F0 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 80048794 000456F4 7C 7B 1B 78 */ mr r27, r3 /* 80048798 000456F8 7C 9C 23 78 */ mr r28, r4 /* 8004879C 000456FC 7C BD 2B 78 */ mr r29, r5 /* 800487A0 00045700 83 E3 08 38 */ lwz r31, 0x838(r3) /* 800487A4 00045704 AB DF 20 08 */ lha r30, 0x2008(r31) /* 800487A8 00045708 48 00 00 AC */ b lbl_80048854 lbl_800487AC: /* 800487AC 0004570C 7F E3 FB 78 */ mr r3, r31 /* 800487B0 00045710 7F C4 F3 78 */ mr r4, r30 /* 800487B4 00045714 4B FC 75 61 */ bl __vc__11CObjectListFi /* 800487B8 00045718 7C 64 1B 78 */ mr r4, r3 /* 800487BC 0004571C 38 61 00 10 */ addi r3, r1, 0x10 /* 800487C0 00045720 48 06 42 9D */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" /* 800487C4 00045724 80 63 00 04 */ lwz r3, 4(r3) /* 800487C8 00045728 28 03 00 00 */ cmplwi r3, 0 /* 800487CC 0004572C 41 82 00 6C */ beq lbl_80048838 /* 800487D0 00045730 88 03 00 30 */ lbz r0, 0x30(r3) /* 800487D4 00045734 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800487D8 00045738 41 82 00 60 */ beq lbl_80048838 /* 800487DC 0004573C 80 C3 00 04 */ lwz r6, 4(r3) /* 800487E0 00045740 80 BB 08 50 */ lwz r5, 0x850(r27) /* 800487E4 00045744 54 C4 18 38 */ slwi r4, r6, 3 /* 800487E8 00045748 90 C1 00 08 */ stw r6, 8(r1) /* 800487EC 0004574C 80 A5 00 20 */ lwz r5, 0x20(r5) /* 800487F0 00045750 38 04 00 04 */ addi r0, r4, 4 /* 800487F4 00045754 90 C1 00 0C */ stw r6, 0xc(r1) /* 800487F8 00045758 7C 85 00 2E */ lwzx r4, r5, r0 /* 800487FC 0004575C 88 04 00 F0 */ lbz r0, 0xf0(r4) /* 80048800 00045760 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80048804 00045764 41 82 00 10 */ beq lbl_80048814 /* 80048808 00045768 80 84 01 2C */ lwz r4, 0x12c(r4) /* 8004880C 0004576C 80 04 10 DC */ lwz r0, 0x10dc(r4) /* 80048810 00045770 48 00 00 08 */ b lbl_80048818 lbl_80048814: /* 80048814 00045774 38 00 00 00 */ li r0, 0 lbl_80048818: /* 80048818 00045778 2C 00 00 00 */ cmpwi r0, 0 /* 8004881C 0004577C 41 82 00 1C */ beq lbl_80048838 /* 80048820 00045780 81 83 00 00 */ lwz r12, 0(r3) /* 80048824 00045784 7F 84 E3 78 */ mr r4, r28 /* 80048828 00045788 7F A5 EB 78 */ mr r5, r29 /* 8004882C 0004578C 81 8C 00 9C */ lwz r12, 0x9c(r12) /* 80048830 00045790 7D 89 03 A6 */ mtctr r12 /* 80048834 00045794 4E 80 04 21 */ bctrl lbl_80048838: /* 80048838 00045798 2C 1E FF FF */ cmpwi r30, -1 /* 8004883C 0004579C 41 82 00 14 */ beq lbl_80048850 /* 80048840 000457A0 57 C3 18 38 */ slwi r3, r30, 3 /* 80048844 000457A4 38 03 00 08 */ addi r0, r3, 8 /* 80048848 000457A8 7F DF 02 AE */ lhax r30, r31, r0 /* 8004884C 000457AC 48 00 00 08 */ b lbl_80048854 lbl_80048850: /* 80048850 000457B0 3B C0 FF FF */ li r30, -1 lbl_80048854: /* 80048854 000457B4 2C 1E FF FF */ cmpwi r30, -1 /* 80048858 000457B8 40 82 FF 54 */ bne lbl_800487AC /* 8004885C 000457BC BB 61 00 1C */ lmw r27, 0x1c(r1) /* 80048860 000457C0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80048864 000457C4 7C 08 03 A6 */ mtlr r0 /* 80048868 000457C8 38 21 00 30 */ addi r1, r1, 0x30 /* 8004886C 000457CC 4E 80 00 20 */ blr .global Listen__3CAiFRC9CVector3f16EListenNoiseType Listen__3CAiFRC9CVector3f16EListenNoiseType: /* 80048870 000457D0 38 60 00 00 */ li r3, 0 /* 80048874 000457D4 4E 80 00 20 */ blr .global KnockBackPlayer__13CStateManagerFR7CPlayerRC9CVector3fff KnockBackPlayer__13CStateManagerFR7CPlayerRC9CVector3fff: /* 80048878 000457D8 94 21 FF 80 */ stwu r1, -0x80(r1) /* 8004887C 000457DC 7C 08 02 A6 */ mflr r0 /* 80048880 000457E0 90 01 00 84 */ stw r0, 0x84(r1) /* 80048884 000457E4 DB E1 00 70 */ stfd f31, 0x70(r1) /* 80048888 000457E8 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 8004888C 000457EC DB C1 00 60 */ stfd f30, 0x60(r1) /* 80048890 000457F0 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 80048894 000457F4 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80048898 000457F8 93 C1 00 58 */ stw r30, 0x58(r1) /* 8004889C 000457FC 7C 9E 23 78 */ mr r30, r4 /* 800488A0 00045800 38 80 00 00 */ li r4, 0 /* 800488A4 00045804 80 7E 00 6C */ lwz r3, 0x6c(r30) /* 800488A8 00045808 38 00 08 00 */ li r0, 0x800 /* 800488AC 0004580C 80 DE 00 68 */ lwz r6, 0x68(r30) /* 800488B0 00045810 7C BF 2B 78 */ mr r31, r5 /* 800488B4 00045814 7C 63 20 38 */ and r3, r3, r4 /* 800488B8 00045818 7C C0 00 38 */ and r0, r6, r0 /* 800488BC 0004581C 7C 63 22 78 */ xor r3, r3, r4 /* 800488C0 00045820 7C 00 22 78 */ xor r0, r0, r4 /* 800488C4 00045824 7C 60 03 79 */ or. r0, r3, r0 /* 800488C8 00045828 40 82 01 A8 */ bne lbl_80048A70 /* 800488CC 0004582C 80 7E 02 F8 */ lwz r3, 0x2f8(r30) /* 800488D0 00045830 2C 03 00 01 */ cmpwi r3, 1 /* 800488D4 00045834 41 82 00 44 */ beq lbl_80048918 /* 800488D8 00045838 C0 02 85 E0 */ lfs f0, lbl_805AA300@sda21(r2) /* 800488DC 0004583C 80 1E 02 B0 */ lwz r0, 0x2b0(r30) /* 800488E0 00045840 EF E1 00 32 */ fmuls f31, f1, f0 /* 800488E4 00045844 2C 00 00 02 */ cmpwi r0, 2 /* 800488E8 00045848 40 82 00 0C */ bne lbl_800488F4 /* 800488EC 0004584C 80 1E 02 AC */ lwz r0, 0x2ac(r30) /* 800488F0 00045850 48 00 00 08 */ b lbl_800488F8 lbl_800488F4: /* 800488F4 00045854 38 00 00 04 */ li r0, 4 lbl_800488F8: /* 800488F8 00045858 2C 00 00 00 */ cmpwi r0, 0 /* 800488FC 0004585C 41 82 00 24 */ beq lbl_80048920 /* 80048900 00045860 80 1E 03 04 */ lwz r0, 0x304(r30) /* 80048904 00045864 2C 00 00 00 */ cmpwi r0, 0 /* 80048908 00045868 40 82 00 18 */ bne lbl_80048920 /* 8004890C 0004586C C0 02 85 B0 */ lfs f0, lbl_805AA2D0@sda21(r2) /* 80048910 00045870 EF FF 00 24 */ fdivs f31, f31, f0 /* 80048914 00045874 48 00 00 0C */ b lbl_80048920 lbl_80048918: /* 80048918 00045878 C0 02 85 E4 */ lfs f0, lbl_805AA304@sda21(r2) /* 8004891C 0004587C EF E1 00 32 */ fmuls f31, f1, f0 lbl_80048920: /* 80048920 00045880 2C 03 00 01 */ cmpwi r3, 1 /* 80048924 00045884 40 82 00 0C */ bne lbl_80048930 /* 80048928 00045888 C0 02 85 E8 */ lfs f0, lbl_805AA308@sda21(r2) /* 8004892C 0004588C 48 00 00 08 */ b lbl_80048934 lbl_80048930: /* 80048930 00045890 C0 02 85 EC */ lfs f0, lbl_805AA30C@sda21(r2) lbl_80048934: /* 80048934 00045894 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80048938 00045898 38 7E 01 38 */ addi r3, r30, 0x138 /* 8004893C 0004589C 48 2C BF 7D */ bl Magnitude__9CVector3fCFv /* 80048940 000458A0 FC 00 08 18 */ frsp f0, f1 /* 80048944 000458A4 C0 41 00 0C */ lfs f2, 0xc(r1) /* 80048948 000458A8 D0 21 00 08 */ stfs f1, 8(r1) /* 8004894C 000458AC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80048950 000458B0 40 80 00 0C */ bge lbl_8004895C /* 80048954 000458B4 38 A1 00 08 */ addi r5, r1, 8 /* 80048958 000458B8 48 00 00 08 */ b lbl_80048960 lbl_8004895C: /* 8004895C 000458BC 38 A1 00 0C */ addi r5, r1, 0xc lbl_80048960: /* 80048960 000458C0 C0 5E 01 40 */ lfs f2, 0x140(r30) /* 80048964 000458C4 7F E3 FB 78 */ mr r3, r31 /* 80048968 000458C8 C0 3E 01 3C */ lfs f1, 0x13c(r30) /* 8004896C 000458CC 38 81 00 34 */ addi r4, r1, 0x34 /* 80048970 000458D0 C0 1E 01 38 */ lfs f0, 0x138(r30) /* 80048974 000458D4 FC 40 10 50 */ fneg f2, f2 /* 80048978 000458D8 C3 C5 00 00 */ lfs f30, 0(r5) /* 8004897C 000458DC FC 20 08 50 */ fneg f1, f1 /* 80048980 000458E0 FC 00 00 50 */ fneg f0, f0 /* 80048984 000458E4 D0 41 00 3C */ stfs f2, 0x3c(r1) /* 80048988 000458E8 D0 01 00 34 */ stfs f0, 0x34(r1) /* 8004898C 000458EC D0 21 00 38 */ stfs f1, 0x38(r1) /* 80048990 000458F0 48 2C BC A1 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f /* 80048994 000458F4 C0 42 85 7C */ lfs f2, lbl_805AA29C@sda21(r2) /* 80048998 000458F8 C0 02 85 F0 */ lfs f0, lbl_805AA310@sda21(r2) /* 8004899C 000458FC EC 62 00 72 */ fmuls f3, f2, f1 /* 800489A0 00045900 C0 82 85 64 */ lfs f4, lbl_805AA284@sda21(r2) /* 800489A4 00045904 C0 5F 00 04 */ lfs f2, 4(r31) /* 800489A8 00045908 C0 3F 00 08 */ lfs f1, 8(r31) /* 800489AC 0004590C EC 63 00 24 */ fdivs f3, f3, f0 /* 800489B0 00045910 C0 1F 00 00 */ lfs f0, 0(r31) /* 800489B4 00045914 EC 64 18 28 */ fsubs f3, f4, f3 /* 800489B8 00045918 EF FF 00 F2 */ fmuls f31, f31, f3 /* 800489BC 0004591C EC 5F 00 B2 */ fmuls f2, f31, f2 /* 800489C0 00045920 EC 3F 00 72 */ fmuls f1, f31, f1 /* 800489C4 00045924 EC 1F 00 32 */ fmuls f0, f31, f0 /* 800489C8 00045928 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 800489CC 0004592C D0 01 00 28 */ stfs f0, 0x28(r1) /* 800489D0 00045930 D0 21 00 30 */ stfs f1, 0x30(r1) /* 800489D4 00045934 4B FD 2B 61 */ bl Identity__10CAxisAngleFv /* 800489D8 00045938 7C 65 1B 78 */ mr r5, r3 /* 800489DC 0004593C 7F C3 F3 78 */ mr r3, r30 /* 800489E0 00045940 38 81 00 28 */ addi r4, r1, 0x28 /* 800489E4 00045944 48 0D 39 B5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800489E8 00045948 7F C3 F3 78 */ mr r3, r30 /* 800489EC 0004594C 48 0D 27 91 */ bl UseCollisionImpulses__13CPhysicsActorFv /* 800489F0 00045950 C0 02 85 70 */ lfs f0, lbl_805AA290@sda21(r2) /* 800489F4 00045954 38 61 00 40 */ addi r3, r1, 0x40 /* 800489F8 00045958 D0 1E 02 D4 */ stfs f0, 0x2d4(r30) /* 800489FC 0004595C C0 1E 01 38 */ lfs f0, 0x138(r30) /* 80048A00 00045960 D0 01 00 40 */ stfs f0, 0x40(r1) /* 80048A04 00045964 C0 1E 01 3C */ lfs f0, 0x13c(r30) /* 80048A08 00045968 D0 01 00 44 */ stfs f0, 0x44(r1) /* 80048A0C 0004596C C0 1E 01 40 */ lfs f0, 0x140(r30) /* 80048A10 00045970 D0 01 00 48 */ stfs f0, 0x48(r1) /* 80048A14 00045974 48 2C BE A5 */ bl Magnitude__9CVector3fCFv /* 80048A18 00045978 FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 80048A1C 0004597C 40 81 00 54 */ ble lbl_80048A70 /* 80048A20 00045980 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 80048A24 00045984 7F C3 F3 78 */ mr r3, r30 /* 80048A28 00045988 C0 41 00 44 */ lfs f2, 0x44(r1) /* 80048A2C 0004598C 38 81 00 1C */ addi r4, r1, 0x1c /* 80048A30 00045990 EC 80 08 24 */ fdivs f4, f0, f1 /* 80048A34 00045994 C0 21 00 48 */ lfs f1, 0x48(r1) /* 80048A38 00045998 C0 01 00 40 */ lfs f0, 0x40(r1) /* 80048A3C 0004599C EC 64 00 B2 */ fmuls f3, f4, f2 /* 80048A40 000459A0 EC 44 00 72 */ fmuls f2, f4, f1 /* 80048A44 000459A4 EC 24 00 32 */ fmuls f1, f4, f0 /* 80048A48 000459A8 EC 9E 00 F2 */ fmuls f4, f30, f3 /* 80048A4C 000459AC D0 61 00 14 */ stfs f3, 0x14(r1) /* 80048A50 000459B0 EC 7E 00 B2 */ fmuls f3, f30, f2 /* 80048A54 000459B4 EC 1E 00 72 */ fmuls f0, f30, f1 /* 80048A58 000459B8 D0 21 00 10 */ stfs f1, 0x10(r1) /* 80048A5C 000459BC D0 41 00 18 */ stfs f2, 0x18(r1) /* 80048A60 000459C0 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80048A64 000459C4 D0 81 00 20 */ stfs f4, 0x20(r1) /* 80048A68 000459C8 D0 61 00 24 */ stfs f3, 0x24(r1) /* 80048A6C 000459CC 48 0D 22 35 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f lbl_80048A70: /* 80048A70 000459D0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 80048A74 000459D4 CB E1 00 70 */ lfd f31, 0x70(r1) /* 80048A78 000459D8 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 80048A7C 000459DC CB C1 00 60 */ lfd f30, 0x60(r1) /* 80048A80 000459E0 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 80048A84 000459E4 80 01 00 84 */ lwz r0, 0x84(r1) /* 80048A88 000459E8 83 C1 00 58 */ lwz r30, 0x58(r1) /* 80048A8C 000459EC 7C 08 03 A6 */ mtlr r0 /* 80048A90 000459F0 38 21 00 80 */ addi r1, r1, 0x80 /* 80048A94 000459F4 4E 80 00 20 */ blr .global ApplyKnockBack__13CStateManagerFR6CActorRC11CDamageInfoRC20CDamageVulnerabilityRC9CVector3ff ApplyKnockBack__13CStateManagerFR6CActorRC11CDamageInfoRC20CDamageVulnerabilityRC9CVector3ff: /* 80048A98 000459F8 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80048A9C 000459FC 7C 08 02 A6 */ mflr r0 /* 80048AA0 00045A00 90 01 00 84 */ stw r0, 0x84(r1) /* 80048AA4 00045A04 DB E1 00 70 */ stfd f31, 0x70(r1) /* 80048AA8 00045A08 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 80048AAC 00045A0C DB C1 00 60 */ stfd f30, 0x60(r1) /* 80048AB0 00045A10 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 80048AB4 00045A14 DB A1 00 50 */ stfd f29, 0x50(r1) /* 80048AB8 00045A18 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 80048ABC 00045A1C BF 41 00 38 */ stmw r26, 0x38(r1) /* 80048AC0 00045A20 FF A0 08 90 */ fmr f29, f1 /* 80048AC4 00045A24 7C BC 2B 78 */ mr r28, r5 /* 80048AC8 00045A28 7C 7A 1B 78 */ mr r26, r3 /* 80048ACC 00045A2C 7C 9B 23 78 */ mr r27, r4 /* 80048AD0 00045A30 7C FD 3B 78 */ mr r29, r7 /* 80048AD4 00045A34 7C C3 33 78 */ mr r3, r6 /* 80048AD8 00045A38 7F 84 E3 78 */ mr r4, r28 /* 80048ADC 00045A3C 38 A0 00 00 */ li r5, 0 /* 80048AE0 00045A40 48 0B 99 DD */ bl GetVulnerability__20CDamageVulnerabilityCFRC11CWeaponMode /* 80048AE4 00045A44 2C 03 00 02 */ cmpwi r3, 2 /* 80048AE8 00045A48 41 82 01 98 */ beq lbl_80048C80 /* 80048AEC 00045A4C 7F 63 DB 78 */ mr r3, r27 /* 80048AF0 00045A50 7F 44 D3 78 */ mr r4, r26 /* 80048AF4 00045A54 81 9B 00 00 */ lwz r12, 0(r27) /* 80048AF8 00045A58 81 8C 00 34 */ lwz r12, 0x34(r12) /* 80048AFC 00045A5C 7D 89 03 A6 */ mtctr r12 /* 80048B00 00045A60 4E 80 04 21 */ bctrl /* 80048B04 00045A64 7C 7F 1B 79 */ or. r31, r3, r3 /* 80048B08 00045A68 41 82 01 78 */ beq lbl_80048C80 /* 80048B0C 00045A6C C0 22 85 64 */ lfs f1, lbl_805AA284@sda21(r2) /* 80048B10 00045A70 7F 64 DB 78 */ mr r4, r27 /* 80048B14 00045A74 C0 1C 00 14 */ lfs f0, 0x14(r28) /* 80048B18 00045A78 38 61 00 18 */ addi r3, r1, 0x18 /* 80048B1C 00045A7C EC 21 E8 28 */ fsubs f1, f1, f29 /* 80048B20 00045A80 C3 FF 00 04 */ lfs f31, 4(r31) /* 80048B24 00045A84 EF C1 00 32 */ fmuls f30, f1, f0 /* 80048B28 00045A88 48 06 38 D9 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" /* 80048B2C 00045A8C 83 C3 00 04 */ lwz r30, 4(r3) /* 80048B30 00045A90 7F 64 DB 78 */ mr r4, r27 /* 80048B34 00045A94 38 61 00 10 */ addi r3, r1, 0x10 /* 80048B38 00045A98 48 06 3F 91 */ bl "__ct__16TCastToPtr<10CPatterned>FR7CEntity" /* 80048B3C 00045A9C 28 1E 00 00 */ cmplwi r30, 0 /* 80048B40 00045AA0 80 63 00 04 */ lwz r3, 4(r3) /* 80048B44 00045AA4 41 82 00 20 */ beq lbl_80048B64 /* 80048B48 00045AA8 FC 20 F0 90 */ fmr f1, f30 /* 80048B4C 00045AAC 7F 43 D3 78 */ mr r3, r26 /* 80048B50 00045AB0 FC 40 F8 90 */ fmr f2, f31 /* 80048B54 00045AB4 7F C4 F3 78 */ mr r4, r30 /* 80048B58 00045AB8 7F A5 EB 78 */ mr r5, r29 /* 80048B5C 00045ABC 4B FF FD 1D */ bl KnockBackPlayer__13CStateManagerFR7CPlayerRC9CVector3fff /* 80048B60 00045AC0 48 00 01 20 */ b lbl_80048C80 lbl_80048B64: /* 80048B64 00045AC4 28 03 00 00 */ cmplwi r3, 0 /* 80048B68 00045AC8 40 82 00 DC */ bne lbl_80048C44 /* 80048B6C 00045ACC C0 3F 00 00 */ lfs f1, 0(r31) /* 80048B70 00045AD0 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80048B74 00045AD4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80048B78 00045AD8 4C 40 13 82 */ cror 2, 0, 2 /* 80048B7C 00045ADC 40 82 00 C8 */ bne lbl_80048C44 /* 80048B80 00045AE0 FC 1E F8 40 */ fcmpo cr0, f30, f31 /* 80048B84 00045AE4 40 81 00 FC */ ble lbl_80048C80 /* 80048B88 00045AE8 7F 64 DB 78 */ mr r4, r27 /* 80048B8C 00045AEC 38 61 00 08 */ addi r3, r1, 8 /* 80048B90 00045AF0 48 06 3B C1 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FR7CEntity" /* 80048B94 00045AF4 83 E3 00 04 */ lwz r31, 4(r3) /* 80048B98 00045AF8 28 1F 00 00 */ cmplwi r31, 0 /* 80048B9C 00045AFC 41 82 00 E4 */ beq lbl_80048C80 /* 80048BA0 00045B00 EC 3E F8 28 */ fsubs f1, f30, f31 /* 80048BA4 00045B04 C0 1F 00 E8 */ lfs f0, 0xe8(r31) /* 80048BA8 00045B08 C0 82 85 F4 */ lfs f4, lbl_805AA314@sda21(r2) /* 80048BAC 00045B0C 38 80 00 00 */ li r4, 0 /* 80048BB0 00045B10 C0 5D 00 04 */ lfs f2, 4(r29) /* 80048BB4 00045B14 38 00 08 00 */ li r0, 0x800 /* 80048BB8 00045B18 EC 61 00 32 */ fmuls f3, f1, f0 /* 80048BBC 00045B1C C0 3D 00 08 */ lfs f1, 8(r29) /* 80048BC0 00045B20 C0 1D 00 00 */ lfs f0, 0(r29) /* 80048BC4 00045B24 EC 64 00 F2 */ fmuls f3, f4, f3 /* 80048BC8 00045B28 EC 43 00 B2 */ fmuls f2, f3, f2 /* 80048BCC 00045B2C EC 23 00 72 */ fmuls f1, f3, f1 /* 80048BD0 00045B30 EC 03 00 32 */ fmuls f0, f3, f0 /* 80048BD4 00045B34 D0 41 00 24 */ stfs f2, 0x24(r1) /* 80048BD8 00045B38 D0 01 00 20 */ stfs f0, 0x20(r1) /* 80048BDC 00045B3C D0 21 00 28 */ stfs f1, 0x28(r1) /* 80048BE0 00045B40 80 BF 00 68 */ lwz r5, 0x68(r31) /* 80048BE4 00045B44 80 DF 00 6C */ lwz r6, 0x6c(r31) /* 80048BE8 00045B48 7C A0 00 38 */ and r0, r5, r0 /* 80048BEC 00045B4C 7C C3 20 38 */ and r3, r6, r4 /* 80048BF0 00045B50 7C 63 22 78 */ xor r3, r3, r4 /* 80048BF4 00045B54 7C 00 22 78 */ xor r0, r0, r4 /* 80048BF8 00045B58 7C 60 03 79 */ or. r0, r3, r0 /* 80048BFC 00045B5C 41 82 00 08 */ beq lbl_80048C04 /* 80048C00 00045B60 38 80 00 01 */ li r4, 1 lbl_80048C04: /* 80048C04 00045B64 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80048C08 00045B68 40 82 00 78 */ bne lbl_80048C80 /* 80048C0C 00045B6C 3C 00 00 08 */ lis r0, 8 /* 80048C10 00045B70 38 80 00 00 */ li r4, 0 /* 80048C14 00045B74 7C C3 00 38 */ and r3, r6, r0 /* 80048C18 00045B78 7C A0 20 38 */ and r0, r5, r4 /* 80048C1C 00045B7C 7C 63 22 78 */ xor r3, r3, r4 /* 80048C20 00045B80 7C 00 22 78 */ xor r0, r0, r4 /* 80048C24 00045B84 7C 60 03 79 */ or. r0, r3, r0 /* 80048C28 00045B88 41 82 00 58 */ beq lbl_80048C80 /* 80048C2C 00045B8C 4B FD 29 09 */ bl Identity__10CAxisAngleFv /* 80048C30 00045B90 7C 65 1B 78 */ mr r5, r3 /* 80048C34 00045B94 7F E3 FB 78 */ mr r3, r31 /* 80048C38 00045B98 38 81 00 20 */ addi r4, r1, 0x20 /* 80048C3C 00045B9C 48 0D 37 5D */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 80048C40 00045BA0 48 00 00 40 */ b lbl_80048C80 lbl_80048C44: /* 80048C44 00045BA4 28 03 00 00 */ cmplwi r3, 0 /* 80048C48 00045BA8 41 82 00 38 */ beq lbl_80048C80 /* 80048C4C 00045BAC C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80048C50 00045BB0 7F A4 EB 78 */ mr r4, r29 /* 80048C54 00045BB4 7F 45 D3 78 */ mr r5, r26 /* 80048C58 00045BB8 7F 86 E3 78 */ mr r6, r28 /* 80048C5C 00045BBC FC 00 E8 00 */ fcmpu cr0, f0, f29 /* 80048C60 00045BC0 FC 20 F0 90 */ fmr f1, f30 /* 80048C64 00045BC4 7C 00 00 26 */ mfcr r0 /* 80048C68 00045BC8 81 83 00 00 */ lwz r12, 0(r3) /* 80048C6C 00045BCC 54 07 1F FE */ rlwinm r7, r0, 3, 0x1f, 0x1f /* 80048C70 00045BD0 39 00 00 00 */ li r8, 0 /* 80048C74 00045BD4 81 8C 00 88 */ lwz r12, 0x88(r12) /* 80048C78 00045BD8 7D 89 03 A6 */ mtctr r12 /* 80048C7C 00045BDC 4E 80 04 21 */ bctrl lbl_80048C80: /* 80048C80 00045BE0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 80048C84 00045BE4 CB E1 00 70 */ lfd f31, 0x70(r1) /* 80048C88 00045BE8 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 80048C8C 00045BEC CB C1 00 60 */ lfd f30, 0x60(r1) /* 80048C90 00045BF0 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 /* 80048C94 00045BF4 CB A1 00 50 */ lfd f29, 0x50(r1) /* 80048C98 00045BF8 BB 41 00 38 */ lmw r26, 0x38(r1) /* 80048C9C 00045BFC 80 01 00 84 */ lwz r0, 0x84(r1) /* 80048CA0 00045C00 7C 08 03 A6 */ mtlr r0 /* 80048CA4 00045C04 38 21 00 80 */ addi r1, r1, 0x80 /* 80048CA8 00045C08 4E 80 00 20 */ blr .global ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter: /* 80048CAC 00045C0C 94 21 F7 10 */ stwu r1, -0x8f0(r1) /* 80048CB0 00045C10 7C 08 02 A6 */ mflr r0 /* 80048CB4 00045C14 90 01 08 F4 */ stw r0, 0x8f4(r1) /* 80048CB8 00045C18 BE 61 08 BC */ stmw r19, 0x8bc(r1) /* 80048CBC 00045C1C 7C 73 1B 78 */ mr r19, r3 /* 80048CC0 00045C20 7C 94 23 78 */ mr r20, r4 /* 80048CC4 00045C24 7C B5 2B 78 */ mr r21, r5 /* 80048CC8 00045C28 7C F7 3B 78 */ mr r23, r7 /* 80048CCC 00045C2C 7C D6 33 78 */ mr r22, r6 /* 80048CD0 00045C30 38 81 00 70 */ addi r4, r1, 0x70 /* 80048CD4 00045C34 38 A1 00 64 */ addi r5, r1, 0x64 /* 80048CD8 00045C38 C0 27 00 10 */ lfs f1, 0x10(r7) /* 80048CDC 00045C3C C0 66 00 04 */ lfs f3, 4(r6) /* 80048CE0 00045C40 FC C0 08 50 */ fneg f6, f1 /* 80048CE4 00045C44 C0 46 00 08 */ lfs f2, 8(r6) /* 80048CE8 00045C48 C0 06 00 00 */ lfs f0, 0(r6) /* 80048CEC 00045C4C EC A3 08 2A */ fadds f5, f3, f1 /* 80048CF0 00045C50 EC 82 08 2A */ fadds f4, f2, f1 /* 80048CF4 00045C54 81 28 00 00 */ lwz r9, 0(r8) /* 80048CF8 00045C58 EC 20 08 2A */ fadds f1, f0, f1 /* 80048CFC 00045C5C 80 68 00 04 */ lwz r3, 4(r8) /* 80048D00 00045C60 EC 63 30 2A */ fadds f3, f3, f6 /* 80048D04 00045C64 80 C8 00 08 */ lwz r6, 8(r8) /* 80048D08 00045C68 EC 42 30 2A */ fadds f2, f2, f6 /* 80048D0C 00045C6C 80 E8 00 0C */ lwz r7, 0xc(r8) /* 80048D10 00045C70 EC 00 30 2A */ fadds f0, f0, f6 /* 80048D14 00045C74 80 08 00 10 */ lwz r0, 0x10(r8) /* 80048D18 00045C78 90 61 00 9C */ stw r3, 0x9c(r1) /* 80048D1C 00045C7C 38 61 00 7C */ addi r3, r1, 0x7c /* 80048D20 00045C80 91 21 00 98 */ stw r9, 0x98(r1) /* 80048D24 00045C84 90 E1 00 A4 */ stw r7, 0xa4(r1) /* 80048D28 00045C88 90 C1 00 A0 */ stw r6, 0xa0(r1) /* 80048D2C 00045C8C 90 01 00 A8 */ stw r0, 0xa8(r1) /* 80048D30 00045C90 D0 21 00 64 */ stfs f1, 0x64(r1) /* 80048D34 00045C94 D0 A1 00 68 */ stfs f5, 0x68(r1) /* 80048D38 00045C98 D0 81 00 6C */ stfs f4, 0x6c(r1) /* 80048D3C 00045C9C D0 01 00 70 */ stfs f0, 0x70(r1) /* 80048D40 00045CA0 D0 61 00 74 */ stfs f3, 0x74(r1) /* 80048D44 00045CA4 D0 41 00 78 */ stfs f2, 0x78(r1) /* 80048D48 00045CA8 48 2E F7 C1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80048D4C 00045CAC 7E A4 AB 78 */ mr r4, r21 /* 80048D50 00045CB0 38 61 00 14 */ addi r3, r1, 0x14 /* 80048D54 00045CB4 48 05 CB 45 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" /* 80048D58 00045CB8 83 A3 00 04 */ lwz r29, 4(r3) /* 80048D5C 00045CBC 3B 00 00 00 */ li r24, 0 /* 80048D60 00045CC0 28 1D 00 00 */ cmplwi r29, 0 /* 80048D64 00045CC4 41 82 00 2C */ beq lbl_80048D90 /* 80048D68 00045CC8 80 9D 00 E8 */ lwz r4, 0xe8(r29) /* 80048D6C 00045CCC 38 60 00 00 */ li r3, 0 /* 80048D70 00045CD0 54 80 05 EE */ rlwinm r0, r4, 0, 0x17, 0x17 /* 80048D74 00045CD4 2C 00 01 00 */ cmpwi r0, 0x100 /* 80048D78 00045CD8 41 82 00 10 */ beq lbl_80048D88 /* 80048D7C 00045CDC 54 80 05 AC */ rlwinm r0, r4, 0, 0x16, 0x16 /* 80048D80 00045CE0 2C 00 02 00 */ cmpwi r0, 0x200 /* 80048D84 00045CE4 40 82 00 08 */ bne lbl_80048D8C lbl_80048D88: /* 80048D88 00045CE8 38 60 00 01 */ li r3, 1 lbl_80048D8C: /* 80048D8C 00045CEC 7C 78 1B 78 */ mr r24, r3 lbl_80048D90: /* 80048D90 00045CF0 38 00 00 00 */ li r0, 0 /* 80048D94 00045CF4 7E 63 9B 78 */ mr r3, r19 /* 80048D98 00045CF8 90 01 00 B0 */ stw r0, 0xb0(r1) /* 80048D9C 00045CFC 7E A7 AB 78 */ mr r7, r21 /* 80048DA0 00045D00 38 81 00 B0 */ addi r4, r1, 0xb0 /* 80048DA4 00045D04 38 A1 00 7C */ addi r5, r1, 0x7c /* 80048DA8 00045D08 38 C1 00 98 */ addi r6, r1, 0x98 /* 80048DAC 00045D0C 48 00 39 75 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" /* 80048DB0 00045D10 3B C1 00 B4 */ addi r30, r1, 0xb4 /* 80048DB4 00045D14 57 1F 06 3E */ clrlwi r31, r24, 0x18 /* 80048DB8 00045D18 7F DC F3 78 */ mr r28, r30 /* 80048DBC 00045D1C 48 00 01 DC */ b lbl_80048F98 lbl_80048DC0: /* 80048DC0 00045D20 A0 1C 00 00 */ lhz r0, 0(r28) /* 80048DC4 00045D24 7E 63 9B 78 */ mr r3, r19 /* 80048DC8 00045D28 38 81 00 10 */ addi r4, r1, 0x10 /* 80048DCC 00045D2C B0 01 00 10 */ sth r0, 0x10(r1) /* 80048DD0 00045D30 48 00 37 A5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80048DD4 00045D34 7C 60 1B 78 */ mr r0, r3 /* 80048DD8 00045D38 38 61 00 34 */ addi r3, r1, 0x34 /* 80048DDC 00045D3C 7C 1B 03 78 */ mr r27, r0 /* 80048DE0 00045D40 7F 64 DB 78 */ mr r4, r27 /* 80048DE4 00045D44 48 06 35 B1 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" /* 80048DE8 00045D48 83 43 00 04 */ lwz r26, 4(r3) /* 80048DEC 00045D4C 7E 63 9B 78 */ mr r3, r19 /* 80048DF0 00045D50 A0 1C 00 00 */ lhz r0, 0(r28) /* 80048DF4 00045D54 38 81 00 0C */ addi r4, r1, 0xc /* 80048DF8 00045D58 B0 01 00 0C */ sth r0, 0xc(r1) /* 80048DFC 00045D5C 48 00 37 79 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80048E00 00045D60 7C 64 1B 78 */ mr r4, r3 /* 80048E04 00045D64 38 61 00 2C */ addi r3, r1, 0x2c /* 80048E08 00045D68 48 05 CE 09 */ bl "__ct__31TCastToPtr<17CWallCrawlerSwarm>FP7CEntity" /* 80048E0C 00045D6C 83 23 00 04 */ lwz r25, 4(r3) /* 80048E10 00045D70 7E 63 9B 78 */ mr r3, r19 /* 80048E14 00045D74 A0 1C 00 00 */ lhz r0, 0(r28) /* 80048E18 00045D78 38 81 00 08 */ addi r4, r1, 8 /* 80048E1C 00045D7C B0 01 00 08 */ sth r0, 8(r1) /* 80048E20 00045D80 48 00 37 55 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80048E24 00045D84 7C 64 1B 78 */ mr r4, r3 /* 80048E28 00045D88 38 61 00 24 */ addi r3, r1, 0x24 /* 80048E2C 00045D8C 48 05 D4 0D */ bl "__ct__29TCastToPtr<15CSnakeWeedSwarm>FP7CEntity" /* 80048E30 00045D90 28 1F 00 00 */ cmplwi r31, 0 /* 80048E34 00045D94 83 03 00 04 */ lwz r24, 4(r3) /* 80048E38 00045D98 41 82 00 94 */ beq lbl_80048ECC /* 80048E3C 00045D9C 28 1A 00 00 */ cmplwi r26, 0 /* 80048E40 00045DA0 41 82 00 8C */ beq lbl_80048ECC /* 80048E44 00045DA4 7F 43 D3 78 */ mr r3, r26 /* 80048E48 00045DA8 4B FC CE B5 */ bl GetFrozenState__7CPlayerCFv /* 80048E4C 00045DAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80048E50 00045DB0 41 82 00 58 */ beq lbl_80048EA8 /* 80048E54 00045DB4 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 80048E58 00045DB8 38 63 00 A8 */ addi r3, r3, 0xa8 /* 80048E5C 00045DBC 48 18 C4 15 */ bl IncrementFrozenBallCount__14CSystemOptionsFv /* 80048E60 00045DC0 38 61 00 54 */ addi r3, r1, 0x54 /* 80048E64 00045DC4 38 8D 82 A4 */ addi r4, r13, lbl_805A6E64@sda21 /* 80048E68 00045DC8 4B FC CB 89 */ bl wstring_l__4rstlFPCw /* 80048E6C 00045DCC C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80048E70 00045DD0 38 00 00 01 */ li r0, 1 /* 80048E74 00045DD4 98 01 00 20 */ stb r0, 0x20(r1) /* 80048E78 00045DD8 38 61 00 54 */ addi r3, r1, 0x54 /* 80048E7C 00045DDC 38 81 00 1C */ addi r4, r1, 0x1c /* 80048E80 00045DE0 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80048E84 00045DE4 98 01 00 21 */ stb r0, 0x21(r1) /* 80048E88 00045DE8 98 01 00 22 */ stb r0, 0x22(r1) /* 80048E8C 00045DEC 48 02 2D DD */ bl DisplayHudMemo__9CSamusHudFRC7wstringRC12SHudMemoInfo /* 80048E90 00045DF0 38 61 00 54 */ addi r3, r1, 0x54 /* 80048E94 00045DF4 48 2F 42 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80048E98 00045DF8 7F 43 D3 78 */ mr r3, r26 /* 80048E9C 00045DFC 7E 64 9B 78 */ mr r4, r19 /* 80048EA0 00045E00 4B FC CB 8D */ bl UnFreeze__7CPlayerFR13CStateManager /* 80048EA4 00045E04 48 00 00 88 */ b lbl_80048F2C lbl_80048EA8: /* 80048EA8 00045E08 80 1D 00 E8 */ lwz r0, 0xe8(r29) /* 80048EAC 00045E0C 54 00 05 EE */ rlwinm r0, r0, 0, 0x17, 0x17 /* 80048EB0 00045E10 2C 00 01 00 */ cmpwi r0, 0x100 /* 80048EB4 00045E14 40 82 00 78 */ bne lbl_80048F2C /* 80048EB8 00045E18 7F 43 D3 78 */ mr r3, r26 /* 80048EBC 00045E1C 7E C4 B3 78 */ mr r4, r22 /* 80048EC0 00045E20 7E 65 9B 78 */ mr r5, r19 /* 80048EC4 00045E24 48 23 C5 29 */ bl BombJump__7CPlayerFRC9CVector3fR13CStateManager /* 80048EC8 00045E28 48 00 00 64 */ b lbl_80048F2C lbl_80048ECC: /* 80048ECC 00045E2C 28 1B 00 00 */ cmplwi r27, 0 /* 80048ED0 00045E30 41 82 00 5C */ beq lbl_80048F2C /* 80048ED4 00045E34 A0 7B 00 08 */ lhz r3, 8(r27) /* 80048ED8 00045E38 A0 14 00 00 */ lhz r0, 0(r20) /* 80048EDC 00045E3C 7C 03 00 40 */ cmplw r3, r0 /* 80048EE0 00045E40 41 82 00 4C */ beq lbl_80048F2C /* 80048EE4 00045E44 7E 63 9B 78 */ mr r3, r19 /* 80048EE8 00045E48 7E A4 AB 78 */ mr r4, r21 /* 80048EEC 00045E4C 7E C5 B3 78 */ mr r5, r22 /* 80048EF0 00045E50 7F 66 DB 78 */ mr r6, r27 /* 80048EF4 00045E54 48 00 0B D9 */ bl TestBombHittingWater__13CStateManagerFRC6CActorRC9CVector3fR6CActor /* 80048EF8 00045E58 7E 63 9B 78 */ mr r3, r19 /* 80048EFC 00045E5C 7E C4 B3 78 */ mr r4, r22 /* 80048F00 00045E60 7F 65 DB 78 */ mr r5, r27 /* 80048F04 00045E64 38 C1 00 B0 */ addi r6, r1, 0xb0 /* 80048F08 00045E68 48 00 05 D9 */ bl "TestRayDamage__13CStateManagerRC9CVector3fRC6CActorRCQ24rstl49reserved_vector<9TUniqueId,1024>" /* 80048F0C 00045E6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80048F10 00045E70 41 82 00 1C */ beq lbl_80048F2C /* 80048F14 00045E74 7E 63 9B 78 */ mr r3, r19 /* 80048F18 00045E78 7E A4 AB 78 */ mr r4, r21 /* 80048F1C 00045E7C 7E C5 B3 78 */ mr r5, r22 /* 80048F20 00045E80 7F 66 DB 78 */ mr r6, r27 /* 80048F24 00045E84 7E E7 BB 78 */ mr r7, r23 /* 80048F28 00045E88 48 00 02 C5 */ bl ApplyRadiusDamage__13CStateManagerFRC6CActorRC9CVector3fR6CActorRC11CDamageInfo lbl_80048F2C: /* 80048F2C 00045E8C 28 19 00 00 */ cmplwi r25, 0 /* 80048F30 00045E90 41 82 00 30 */ beq lbl_80048F60 /* 80048F34 00045E94 80 96 00 00 */ lwz r4, 0(r22) /* 80048F38 00045E98 7F 23 CB 78 */ mr r3, r25 /* 80048F3C 00045E9C 80 F6 00 04 */ lwz r7, 4(r22) /* 80048F40 00045EA0 7E E5 BB 78 */ mr r5, r23 /* 80048F44 00045EA4 80 16 00 08 */ lwz r0, 8(r22) /* 80048F48 00045EA8 7E 66 9B 78 */ mr r6, r19 /* 80048F4C 00045EAC 90 81 00 48 */ stw r4, 0x48(r1) /* 80048F50 00045EB0 38 81 00 48 */ addi r4, r1, 0x48 /* 80048F54 00045EB4 90 E1 00 4C */ stw r7, 0x4c(r1) /* 80048F58 00045EB8 90 01 00 50 */ stw r0, 0x50(r1) /* 80048F5C 00045EBC 48 19 F9 15 */ bl ApplyRadiusDamage__17CWallCrawlerSwarmF9CVector3ffR13CStateManager lbl_80048F60: /* 80048F60 00045EC0 28 18 00 00 */ cmplwi r24, 0 /* 80048F64 00045EC4 41 82 00 30 */ beq lbl_80048F94 /* 80048F68 00045EC8 80 96 00 00 */ lwz r4, 0(r22) /* 80048F6C 00045ECC 7F 03 C3 78 */ mr r3, r24 /* 80048F70 00045ED0 80 F6 00 04 */ lwz r7, 4(r22) /* 80048F74 00045ED4 7E E5 BB 78 */ mr r5, r23 /* 80048F78 00045ED8 80 16 00 08 */ lwz r0, 8(r22) /* 80048F7C 00045EDC 7E 66 9B 78 */ mr r6, r19 /* 80048F80 00045EE0 90 81 00 3C */ stw r4, 0x3c(r1) /* 80048F84 00045EE4 38 81 00 3C */ addi r4, r1, 0x3c /* 80048F88 00045EE8 90 E1 00 40 */ stw r7, 0x40(r1) /* 80048F8C 00045EEC 90 01 00 44 */ stw r0, 0x44(r1) /* 80048F90 00045EF0 48 1F 3A 75 */ bl ApplyRadiusDamage__15CSnakeWeedSwarmF9CVector3ffR13CStateManager lbl_80048F94: /* 80048F94 00045EF4 3B 9C 00 02 */ addi r28, r28, 2 lbl_80048F98: /* 80048F98 00045EF8 80 A1 00 B0 */ lwz r5, 0xb0(r1) /* 80048F9C 00045EFC 54 A0 08 3C */ slwi r0, r5, 1 /* 80048FA0 00045F00 7C 1E 02 14 */ add r0, r30, r0 /* 80048FA4 00045F04 7C 1C 00 40 */ cmplw r28, r0 /* 80048FA8 00045F08 40 82 FE 18 */ bne lbl_80048DC0 /* 80048FAC 00045F0C 2C 05 00 00 */ cmpwi r5, 0 /* 80048FB0 00045F10 38 60 00 00 */ li r3, 0 /* 80048FB4 00045F14 40 81 00 40 */ ble lbl_80048FF4 /* 80048FB8 00045F18 2C 05 00 08 */ cmpwi r5, 8 /* 80048FBC 00045F1C 38 85 FF F8 */ addi r4, r5, -8 /* 80048FC0 00045F20 40 81 00 20 */ ble lbl_80048FE0 /* 80048FC4 00045F24 38 04 00 07 */ addi r0, r4, 7 /* 80048FC8 00045F28 54 00 E8 FE */ srwi r0, r0, 3 /* 80048FCC 00045F2C 7C 09 03 A6 */ mtctr r0 /* 80048FD0 00045F30 2C 04 00 00 */ cmpwi r4, 0 /* 80048FD4 00045F34 40 81 00 0C */ ble lbl_80048FE0 lbl_80048FD8: /* 80048FD8 00045F38 38 63 00 08 */ addi r3, r3, 8 /* 80048FDC 00045F3C 42 00 FF FC */ bdnz lbl_80048FD8 lbl_80048FE0: /* 80048FE0 00045F40 7C 03 28 50 */ subf r0, r3, r5 /* 80048FE4 00045F44 7C 09 03 A6 */ mtctr r0 /* 80048FE8 00045F48 7C 03 28 00 */ cmpw r3, r5 /* 80048FEC 00045F4C 40 80 00 08 */ bge lbl_80048FF4 lbl_80048FF0: /* 80048FF0 00045F50 42 00 00 00 */ bdnz lbl_80048FF0 lbl_80048FF4: /* 80048FF4 00045F54 38 00 00 00 */ li r0, 0 /* 80048FF8 00045F58 90 01 00 B0 */ stw r0, 0xb0(r1) /* 80048FFC 00045F5C BA 61 08 BC */ lmw r19, 0x8bc(r1) /* 80049000 00045F60 80 01 08 F4 */ lwz r0, 0x8f4(r1) /* 80049004 00045F64 7C 08 03 A6 */ mtlr r0 /* 80049008 00045F68 38 21 08 F0 */ addi r1, r1, 0x8f0 /* 8004900C 00045F6C 4E 80 00 20 */ blr .global ProcessRadiusDamage__13CStateManagerFRC6CActorR6CActor9TUniqueIdRC11CDamageInfoRC15CMaterialFilter ProcessRadiusDamage__13CStateManagerFRC6CActorR6CActor9TUniqueIdRC11CDamageInfoRC15CMaterialFilter: /* 80049010 00045F70 94 21 F7 70 */ stwu r1, -0x890(r1) /* 80049014 00045F74 7C 08 02 A6 */ mflr r0 /* 80049018 00045F78 90 01 08 94 */ stw r0, 0x894(r1) /* 8004901C 00045F7C BE E1 08 6C */ stmw r23, 0x86c(r1) /* 80049020 00045F80 7C 9D 23 78 */ mr r29, r4 /* 80049024 00045F84 7C DE 33 78 */ mr r30, r6 /* 80049028 00045F88 7C 7C 1B 78 */ mr r28, r3 /* 8004902C 00045F8C 7C FF 3B 78 */ mr r31, r7 /* 80049030 00045F90 38 61 00 30 */ addi r3, r1, 0x30 /* 80049034 00045F94 C0 07 00 10 */ lfs f0, 0x10(r7) /* 80049038 00045F98 81 28 00 00 */ lwz r9, 0(r8) /* 8004903C 00045F9C 81 48 00 04 */ lwz r10, 4(r8) /* 80049040 00045FA0 FD 20 00 50 */ fneg f9, f0 /* 80049044 00045FA4 C0 E4 00 50 */ lfs f7, 0x50(r4) /* 80049048 00045FA8 C1 04 00 60 */ lfs f8, 0x60(r4) /* 8004904C 00045FAC 38 81 00 18 */ addi r4, r1, 0x18 /* 80049050 00045FB0 C0 7D 00 40 */ lfs f3, 0x40(r29) /* 80049054 00045FB4 EC A7 00 2A */ fadds f5, f7, f0 /* 80049058 00045FB8 80 C8 00 08 */ lwz r6, 8(r8) /* 8004905C 00045FBC EC 88 00 2A */ fadds f4, f8, f0 /* 80049060 00045FC0 80 E8 00 0C */ lwz r7, 0xc(r8) /* 80049064 00045FC4 EC C3 00 2A */ fadds f6, f3, f0 /* 80049068 00045FC8 80 08 00 10 */ lwz r0, 0x10(r8) /* 8004906C 00045FCC 91 41 00 4C */ stw r10, 0x4c(r1) /* 80049070 00045FD0 EC 43 48 2A */ fadds f2, f3, f9 /* 80049074 00045FD4 EC 27 48 2A */ fadds f1, f7, f9 /* 80049078 00045FD8 A3 7D 00 08 */ lhz r27, 8(r29) /* 8004907C 00045FDC 91 21 00 48 */ stw r9, 0x48(r1) /* 80049080 00045FE0 EC 08 48 2A */ fadds f0, f8, f9 /* 80049084 00045FE4 90 E1 00 54 */ stw r7, 0x54(r1) /* 80049088 00045FE8 90 C1 00 50 */ stw r6, 0x50(r1) /* 8004908C 00045FEC 90 01 00 58 */ stw r0, 0x58(r1) /* 80049090 00045FF0 A3 45 00 08 */ lhz r26, 8(r5) /* 80049094 00045FF4 38 A1 00 0C */ addi r5, r1, 0xc /* 80049098 00045FF8 D0 61 00 24 */ stfs f3, 0x24(r1) /* 8004909C 00045FFC D0 E1 00 28 */ stfs f7, 0x28(r1) /* 800490A0 00046000 D1 01 00 2C */ stfs f8, 0x2c(r1) /* 800490A4 00046004 D0 C1 00 0C */ stfs f6, 0xc(r1) /* 800490A8 00046008 D0 A1 00 10 */ stfs f5, 0x10(r1) /* 800490AC 0004600C D0 81 00 14 */ stfs f4, 0x14(r1) /* 800490B0 00046010 D0 41 00 18 */ stfs f2, 0x18(r1) /* 800490B4 00046014 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800490B8 00046018 D0 01 00 20 */ stfs f0, 0x20(r1) /* 800490BC 0004601C 48 2E F4 4D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 800490C0 00046020 38 00 00 00 */ li r0, 0 /* 800490C4 00046024 7F 83 E3 78 */ mr r3, r28 /* 800490C8 00046028 90 01 00 60 */ stw r0, 0x60(r1) /* 800490CC 0004602C 38 81 00 60 */ addi r4, r1, 0x60 /* 800490D0 00046030 38 A1 00 30 */ addi r5, r1, 0x30 /* 800490D4 00046034 38 C1 00 48 */ addi r6, r1, 0x48 /* 800490D8 00046038 38 E0 00 00 */ li r7, 0 /* 800490DC 0004603C 48 00 36 45 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" /* 800490E0 00046040 3B 21 00 64 */ addi r25, r1, 0x64 /* 800490E4 00046044 7F 38 CB 78 */ mr r24, r25 /* 800490E8 00046048 48 00 00 8C */ b lbl_80049174 lbl_800490EC: /* 800490EC 0004604C A0 18 00 00 */ lhz r0, 0(r24) /* 800490F0 00046050 7F 83 E3 78 */ mr r3, r28 /* 800490F4 00046054 38 81 00 08 */ addi r4, r1, 8 /* 800490F8 00046058 B0 01 00 08 */ sth r0, 8(r1) /* 800490FC 0004605C 48 00 34 79 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80049100 00046060 7C 77 1B 79 */ or. r23, r3, r3 /* 80049104 00046064 41 82 00 6C */ beq lbl_80049170 /* 80049108 00046068 A0 77 00 08 */ lhz r3, 8(r23) /* 8004910C 0004606C 7C 1B 18 40 */ cmplw r27, r3 /* 80049110 00046070 41 82 00 60 */ beq lbl_80049170 /* 80049114 00046074 A0 1E 00 00 */ lhz r0, 0(r30) /* 80049118 00046078 7C 00 18 40 */ cmplw r0, r3 /* 8004911C 0004607C 41 82 00 54 */ beq lbl_80049170 /* 80049120 00046080 7C 1A 18 40 */ cmplw r26, r3 /* 80049124 00046084 41 82 00 4C */ beq lbl_80049170 /* 80049128 00046088 7F 83 E3 78 */ mr r3, r28 /* 8004912C 0004608C 7F A4 EB 78 */ mr r4, r29 /* 80049130 00046090 7E E6 BB 78 */ mr r6, r23 /* 80049134 00046094 38 A1 00 24 */ addi r5, r1, 0x24 /* 80049138 00046098 48 00 09 95 */ bl TestBombHittingWater__13CStateManagerFRC6CActorRC9CVector3fR6CActor /* 8004913C 0004609C 7F 83 E3 78 */ mr r3, r28 /* 80049140 000460A0 7E E5 BB 78 */ mr r5, r23 /* 80049144 000460A4 38 81 00 24 */ addi r4, r1, 0x24 /* 80049148 000460A8 38 C1 00 60 */ addi r6, r1, 0x60 /* 8004914C 000460AC 48 00 03 95 */ bl "TestRayDamage__13CStateManagerRC9CVector3fRC6CActorRCQ24rstl49reserved_vector<9TUniqueId,1024>" /* 80049150 000460B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049154 000460B4 41 82 00 1C */ beq lbl_80049170 /* 80049158 000460B8 7F 83 E3 78 */ mr r3, r28 /* 8004915C 000460BC 7F A4 EB 78 */ mr r4, r29 /* 80049160 000460C0 7E E6 BB 78 */ mr r6, r23 /* 80049164 000460C4 7F E7 FB 78 */ mr r7, r31 /* 80049168 000460C8 38 A1 00 24 */ addi r5, r1, 0x24 /* 8004916C 000460CC 48 00 00 81 */ bl ApplyRadiusDamage__13CStateManagerFRC6CActorRC9CVector3fR6CActorRC11CDamageInfo lbl_80049170: /* 80049170 000460D0 3B 18 00 02 */ addi r24, r24, 2 lbl_80049174: /* 80049174 000460D4 80 A1 00 60 */ lwz r5, 0x60(r1) /* 80049178 000460D8 54 A0 08 3C */ slwi r0, r5, 1 /* 8004917C 000460DC 7C 19 02 14 */ add r0, r25, r0 /* 80049180 000460E0 7C 18 00 40 */ cmplw r24, r0 /* 80049184 000460E4 40 82 FF 68 */ bne lbl_800490EC /* 80049188 000460E8 2C 05 00 00 */ cmpwi r5, 0 /* 8004918C 000460EC 38 60 00 00 */ li r3, 0 /* 80049190 000460F0 40 81 00 40 */ ble lbl_800491D0 /* 80049194 000460F4 2C 05 00 08 */ cmpwi r5, 8 /* 80049198 000460F8 38 85 FF F8 */ addi r4, r5, -8 /* 8004919C 000460FC 40 81 00 20 */ ble lbl_800491BC /* 800491A0 00046100 38 04 00 07 */ addi r0, r4, 7 /* 800491A4 00046104 54 00 E8 FE */ srwi r0, r0, 3 /* 800491A8 00046108 7C 09 03 A6 */ mtctr r0 /* 800491AC 0004610C 2C 04 00 00 */ cmpwi r4, 0 /* 800491B0 00046110 40 81 00 0C */ ble lbl_800491BC lbl_800491B4: /* 800491B4 00046114 38 63 00 08 */ addi r3, r3, 8 /* 800491B8 00046118 42 00 FF FC */ bdnz lbl_800491B4 lbl_800491BC: /* 800491BC 0004611C 7C 03 28 50 */ subf r0, r3, r5 /* 800491C0 00046120 7C 09 03 A6 */ mtctr r0 /* 800491C4 00046124 7C 03 28 00 */ cmpw r3, r5 /* 800491C8 00046128 40 80 00 08 */ bge lbl_800491D0 lbl_800491CC: /* 800491CC 0004612C 42 00 00 00 */ bdnz lbl_800491CC lbl_800491D0: /* 800491D0 00046130 38 00 00 00 */ li r0, 0 /* 800491D4 00046134 90 01 00 60 */ stw r0, 0x60(r1) /* 800491D8 00046138 BA E1 08 6C */ lmw r23, 0x86c(r1) /* 800491DC 0004613C 80 01 08 94 */ lwz r0, 0x894(r1) /* 800491E0 00046140 7C 08 03 A6 */ mtlr r0 /* 800491E4 00046144 38 21 08 90 */ addi r1, r1, 0x890 /* 800491E8 00046148 4E 80 00 20 */ blr .global ApplyRadiusDamage__13CStateManagerFRC6CActorRC9CVector3fR6CActorRC11CDamageInfo ApplyRadiusDamage__13CStateManagerFRC6CActorRC9CVector3fR6CActorRC11CDamageInfo: /* 800491EC 0004614C 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 800491F0 00046150 7C 08 02 A6 */ mflr r0 /* 800491F4 00046154 90 01 00 C4 */ stw r0, 0xc4(r1) /* 800491F8 00046158 DB E1 00 B0 */ stfd f31, 0xb0(r1) /* 800491FC 0004615C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 /* 80049200 00046160 BF 21 00 94 */ stmw r25, 0x94(r1) /* 80049204 00046164 7C B9 2B 78 */ mr r25, r5 /* 80049208 00046168 7C DA 33 78 */ mr r26, r6 /* 8004920C 0004616C C0 66 00 50 */ lfs f3, 0x50(r6) /* 80049210 00046170 7C FB 3B 78 */ mr r27, r7 /* 80049214 00046174 C0 45 00 04 */ lfs f2, 4(r5) /* 80049218 00046178 7C 7E 1B 78 */ mr r30, r3 /* 8004921C 0004617C C0 26 00 40 */ lfs f1, 0x40(r6) /* 80049220 00046180 7C 9F 23 78 */ mr r31, r4 /* 80049224 00046184 C0 05 00 00 */ lfs f0, 0(r5) /* 80049228 00046188 EC A3 10 28 */ fsubs f5, f3, f2 /* 8004922C 0004618C C0 66 00 60 */ lfs f3, 0x60(r6) /* 80049230 00046190 EC 01 00 28 */ fsubs f0, f1, f0 /* 80049234 00046194 C0 45 00 08 */ lfs f2, 8(r5) /* 80049238 00046198 EC 25 01 72 */ fmuls f1, f5, f5 /* 8004923C 0004619C C0 C7 00 10 */ lfs f6, 0x10(r7) /* 80049240 000461A0 EC 83 10 28 */ fsubs f4, f3, f2 /* 80049244 000461A4 D0 A1 00 44 */ stfs f5, 0x44(r1) /* 80049248 000461A8 EC 40 00 32 */ fmuls f2, f0, f0 /* 8004924C 000461AC D0 01 00 40 */ stfs f0, 0x40(r1) /* 80049250 000461B0 EC 64 01 32 */ fmuls f3, f4, f4 /* 80049254 000461B4 EC 06 01 B2 */ fmuls f0, f6, f6 /* 80049258 000461B8 D0 81 00 48 */ stfs f4, 0x48(r1) /* 8004925C 000461BC EC 22 08 2A */ fadds f1, f2, f1 /* 80049260 000461C0 EC 23 08 2A */ fadds f1, f3, f1 /* 80049264 000461C4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049268 000461C8 41 80 00 84 */ blt lbl_800492EC /* 8004926C 000461CC 7F 44 D3 78 */ mr r4, r26 /* 80049270 000461D0 38 61 00 68 */ addi r3, r1, 0x68 /* 80049274 000461D4 81 9A 00 00 */ lwz r12, 0(r26) /* 80049278 000461D8 81 8C 00 40 */ lwz r12, 0x40(r12) /* 8004927C 000461DC 7D 89 03 A6 */ mtctr r12 /* 80049280 000461E0 4E 80 04 21 */ bctrl /* 80049284 000461E4 88 61 00 80 */ lbz r3, 0x80(r1) /* 80049288 000461E8 38 00 00 00 */ li r0, 0 /* 8004928C 000461EC 28 03 00 00 */ cmplwi r3, 0 /* 80049290 000461F0 98 01 00 80 */ stb r0, 0x80(r1) /* 80049294 000461F4 41 82 02 30 */ beq lbl_800494C4 /* 80049298 000461F8 7F 44 D3 78 */ mr r4, r26 /* 8004929C 000461FC 38 61 00 4C */ addi r3, r1, 0x4c /* 800492A0 00046200 81 9A 00 00 */ lwz r12, 0(r26) /* 800492A4 00046204 81 8C 00 40 */ lwz r12, 0x40(r12) /* 800492A8 00046208 7D 89 03 A6 */ mtctr r12 /* 800492AC 0004620C 4E 80 04 21 */ bctrl /* 800492B0 00046210 C0 7B 00 10 */ lfs f3, 0x10(r27) /* 800492B4 00046214 38 61 00 24 */ addi r3, r1, 0x24 /* 800492B8 00046218 C0 59 00 00 */ lfs f2, 0(r25) /* 800492BC 0004621C 38 81 00 4C */ addi r4, r1, 0x4c /* 800492C0 00046220 C0 39 00 04 */ lfs f1, 4(r25) /* 800492C4 00046224 C0 19 00 08 */ lfs f0, 8(r25) /* 800492C8 00046228 D0 41 00 24 */ stfs f2, 0x24(r1) /* 800492CC 0004622C D0 21 00 28 */ stfs f1, 0x28(r1) /* 800492D0 00046230 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800492D4 00046234 D0 61 00 30 */ stfs f3, 0x30(r1) /* 800492D8 00046238 48 28 BF 25 */ bl Sphere_AABox_Bool__17CCollidableSphereFRC7CSphereRC6CAABox /* 800492DC 0004623C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800492E0 00046240 38 60 00 00 */ li r3, 0 /* 800492E4 00046244 98 61 00 64 */ stb r3, 0x64(r1) /* 800492E8 00046248 41 82 01 DC */ beq lbl_800494C4 lbl_800492EC: /* 800492EC 0004624C C3 FB 00 10 */ lfs f31, 0x10(r27) /* 800492F0 00046250 C0 02 85 88 */ lfs f0, lbl_805AA2A8@sda21(r2) /* 800492F4 00046254 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800492F8 00046258 40 81 00 14 */ ble lbl_8004930C /* 800492FC 0004625C 38 61 00 40 */ addi r3, r1, 0x40 /* 80049300 00046260 48 2C B5 B9 */ bl Magnitude__9CVector3fCFv /* 80049304 00046264 EF E1 F8 24 */ fdivs f31, f1, f31 /* 80049308 00046268 48 00 00 08 */ b lbl_80049310 lbl_8004930C: /* 8004930C 0004626C C3 E2 85 68 */ lfs f31, lbl_805AA288@sda21(r2) lbl_80049310: /* 80049310 00046270 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80049314 00046274 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80049318 00046278 40 81 00 0C */ ble lbl_80049324 /* 8004931C 0004627C 38 61 00 40 */ addi r3, r1, 0x40 /* 80049320 00046280 48 2C B5 D9 */ bl Normalize__9CVector3fFv lbl_80049324: /* 80049324 00046284 7F 43 D3 78 */ mr r3, r26 /* 80049328 00046288 7F C4 F3 78 */ mr r4, r30 /* 8004932C 0004628C 81 9A 00 00 */ lwz r12, 0(r26) /* 80049330 00046290 81 8C 00 34 */ lwz r12, 0x34(r12) /* 80049334 00046294 7D 89 03 A6 */ mtctr r12 /* 80049338 00046298 4E 80 04 21 */ bctrl /* 8004933C 0004629C 28 03 00 00 */ cmplwi r3, 0 /* 80049340 000462A0 3B A0 00 00 */ li r29, 0 /* 80049344 000462A4 41 82 00 18 */ beq lbl_8004935C /* 80049348 000462A8 C0 23 00 00 */ lfs f1, 0(r3) /* 8004934C 000462AC C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80049350 000462B0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049354 000462B4 40 81 00 08 */ ble lbl_8004935C /* 80049358 000462B8 3B A0 00 01 */ li r29, 1 lbl_8004935C: /* 8004935C 000462BC C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80049360 000462C0 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80049364 000462C4 40 81 00 2C */ ble lbl_80049390 /* 80049368 000462C8 7F 43 D3 78 */ mr r3, r26 /* 8004936C 000462CC 7F 24 CB 78 */ mr r4, r25 /* 80049370 000462D0 81 9A 00 00 */ lwz r12, 0(r26) /* 80049374 000462D4 7F 66 DB 78 */ mr r6, r27 /* 80049378 000462D8 38 A1 00 40 */ addi r5, r1, 0x40 /* 8004937C 000462DC 81 8C 00 3C */ lwz r12, 0x3c(r12) /* 80049380 000462E0 7D 89 03 A6 */ mtctr r12 /* 80049384 000462E4 4E 80 04 21 */ bctrl /* 80049388 000462E8 7C 7C 1B 78 */ mr r28, r3 /* 8004938C 000462EC 48 00 00 1C */ b lbl_800493A8 lbl_80049390: /* 80049390 000462F0 7F 43 D3 78 */ mr r3, r26 /* 80049394 000462F4 81 9A 00 00 */ lwz r12, 0(r26) /* 80049398 000462F8 81 8C 00 38 */ lwz r12, 0x38(r12) /* 8004939C 000462FC 7D 89 03 A6 */ mtctr r12 /* 800493A0 00046300 4E 80 04 21 */ bctrl /* 800493A4 00046304 7C 7C 1B 78 */ mr r28, r3 lbl_800493A8: /* 800493A8 00046308 7F 83 E3 78 */ mr r3, r28 /* 800493AC 0004630C 7F 64 DB 78 */ mr r4, r27 /* 800493B0 00046310 38 A0 00 01 */ li r5, 1 /* 800493B4 00046314 48 0B 93 55 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode /* 800493B8 00046318 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800493BC 0004631C 41 82 00 6C */ beq lbl_80049428 /* 800493C0 00046320 7F 63 DB 78 */ mr r3, r27 /* 800493C4 00046324 7F 84 E3 78 */ mr r4, r28 /* 800493C8 00046328 48 07 A0 D1 */ bl GetRadiusDamage__11CDamageInfoCFRC20CDamageVulnerability /* 800493CC 0004632C C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 800493D0 00046330 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800493D4 00046334 40 81 00 1C */ ble lbl_800493F0 /* 800493D8 00046338 7F C3 F3 78 */ mr r3, r30 /* 800493DC 0004633C 7F 24 CB 78 */ mr r4, r25 /* 800493E0 00046340 7F 46 D3 78 */ mr r6, r26 /* 800493E4 00046344 7F 67 DB 78 */ mr r7, r27 /* 800493E8 00046348 38 A1 00 40 */ addi r5, r1, 0x40 /* 800493EC 0004634C 48 00 09 E9 */ bl ApplyLocalDamage__13CStateManagerFRC9CVector3fRC9CVector3fR6CActorfRC11CWeaponMode lbl_800493F0: /* 800493F0 00046350 7F 43 D3 78 */ mr r3, r26 /* 800493F4 00046354 7F C5 F3 78 */ mr r5, r30 /* 800493F8 00046358 38 80 00 16 */ li r4, 0x16 /* 800493FC 0004635C 38 C0 FF FF */ li r6, -1 /* 80049400 00046360 48 00 7C C1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 80049404 00046364 A0 1F 00 08 */ lhz r0, 8(r31) /* 80049408 00046368 7F C3 F3 78 */ mr r3, r30 /* 8004940C 0004636C 7F 44 D3 78 */ mr r4, r26 /* 80049410 00046370 38 A1 00 14 */ addi r5, r1, 0x14 /* 80049414 00046374 B0 01 00 10 */ sth r0, 0x10(r1) /* 80049418 00046378 38 C0 00 29 */ li r6, 0x29 /* 8004941C 0004637C B0 01 00 14 */ sth r0, 0x14(r1) /* 80049420 00046380 4B FF AA B1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage /* 80049424 00046384 48 00 00 38 */ b lbl_8004945C lbl_80049428: /* 80049428 00046388 7F 43 D3 78 */ mr r3, r26 /* 8004942C 0004638C 7F C5 F3 78 */ mr r5, r30 /* 80049430 00046390 38 80 00 17 */ li r4, 0x17 /* 80049434 00046394 38 C0 FF FF */ li r6, -1 /* 80049438 00046398 48 00 7C 89 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8004943C 0004639C A0 1F 00 08 */ lhz r0, 8(r31) /* 80049440 000463A0 7F C3 F3 78 */ mr r3, r30 /* 80049444 000463A4 7F 44 D3 78 */ mr r4, r26 /* 80049448 000463A8 38 A1 00 0C */ addi r5, r1, 0xc /* 8004944C 000463AC B0 01 00 08 */ sth r0, 8(r1) /* 80049450 000463B0 38 C0 00 2A */ li r6, 0x2a /* 80049454 000463B4 B0 01 00 0C */ sth r0, 0xc(r1) /* 80049458 000463B8 4B FF AA 79 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage lbl_8004945C: /* 8004945C 000463BC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 80049460 000463C0 41 82 00 64 */ beq lbl_800494C4 /* 80049464 000463C4 C0 3B 00 14 */ lfs f1, 0x14(r27) /* 80049468 000463C8 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004946C 000463CC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049470 000463D0 40 81 00 54 */ ble lbl_800494C4 /* 80049474 000463D4 C0 7A 00 50 */ lfs f3, 0x50(r26) /* 80049478 000463D8 38 61 00 18 */ addi r3, r1, 0x18 /* 8004947C 000463DC C0 1F 00 50 */ lfs f0, 0x50(r31) /* 80049480 000463E0 38 81 00 34 */ addi r4, r1, 0x34 /* 80049484 000463E4 C0 5A 00 40 */ lfs f2, 0x40(r26) /* 80049488 000463E8 C0 3F 00 40 */ lfs f1, 0x40(r31) /* 8004948C 000463EC EC 63 00 28 */ fsubs f3, f3, f0 /* 80049490 000463F0 C0 02 85 F8 */ lfs f0, lbl_805AA318@sda21(r2) /* 80049494 000463F4 EC 22 08 28 */ fsubs f1, f2, f1 /* 80049498 000463F8 D0 61 00 38 */ stfs f3, 0x38(r1) /* 8004949C 000463FC D0 21 00 34 */ stfs f1, 0x34(r1) /* 800494A0 00046400 D0 01 00 3C */ stfs f0, 0x3c(r1) /* 800494A4 00046404 48 2C B3 AD */ bl AsNormalized__9CVector3fCFv /* 800494A8 00046408 FC 20 F8 90 */ fmr f1, f31 /* 800494AC 0004640C 7F C3 F3 78 */ mr r3, r30 /* 800494B0 00046410 7F 44 D3 78 */ mr r4, r26 /* 800494B4 00046414 7F 65 DB 78 */ mr r5, r27 /* 800494B8 00046418 7F 86 E3 78 */ mr r6, r28 /* 800494BC 0004641C 38 E1 00 18 */ addi r7, r1, 0x18 /* 800494C0 00046420 4B FF F5 D9 */ bl ApplyKnockBack__13CStateManagerFR6CActorRC11CDamageInfoRC20CDamageVulnerabilityRC9CVector3ff lbl_800494C4: /* 800494C4 00046424 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 /* 800494C8 00046428 CB E1 00 B0 */ lfd f31, 0xb0(r1) /* 800494CC 0004642C BB 21 00 94 */ lmw r25, 0x94(r1) /* 800494D0 00046430 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 800494D4 00046434 7C 08 03 A6 */ mtlr r0 /* 800494D8 00046438 38 21 00 C0 */ addi r1, r1, 0xc0 /* 800494DC 0004643C 4E 80 00 20 */ blr .global "TestRayDamage__13CStateManagerRC9CVector3fRC6CActorRCQ24rstl49reserved_vector<9TUniqueId,1024>" "TestRayDamage__13CStateManagerRC9CVector3fRC6CActorRCQ24rstl49reserved_vector<9TUniqueId,1024>": /* 800494E0 00046440 94 21 FE D0 */ stwu r1, -0x130(r1) /* 800494E4 00046444 7C 08 02 A6 */ mflr r0 /* 800494E8 00046448 90 01 01 34 */ stw r0, 0x134(r1) /* 800494EC 0004644C DB E1 01 20 */ stfd f31, 0x120(r1) /* 800494F0 00046450 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 /* 800494F4 00046454 BF 41 01 08 */ stmw r26, 0x108(r1) /* 800494F8 00046458 7C BE 2B 78 */ mr r30, r5 /* 800494FC 0004645C 7C 7C 1B 78 */ mr r28, r3 /* 80049500 00046460 7F C3 F3 78 */ mr r3, r30 /* 80049504 00046464 7C 9D 23 78 */ mr r29, r4 /* 80049508 00046468 81 9E 00 00 */ lwz r12, 0(r30) /* 8004950C 0004646C 7C DF 33 78 */ mr r31, r6 /* 80049510 00046470 7F 84 E3 78 */ mr r4, r28 /* 80049514 00046474 81 8C 00 34 */ lwz r12, 0x34(r12) /* 80049518 00046478 7D 89 03 A6 */ mtctr r12 /* 8004951C 0004647C 4E 80 04 21 */ bctrl /* 80049520 00046480 28 03 00 00 */ cmplwi r3, 0 /* 80049524 00046484 40 82 00 0C */ bne lbl_80049530 /* 80049528 00046488 38 60 00 00 */ li r3, 0 /* 8004952C 0004648C 48 00 03 90 */ b lbl_800498BC lbl_80049530: /* 80049530 00046490 88 0D A1 E1 */ lbz r0, lbl_805A8DA1@sda21(r13) /* 80049534 00046494 7C 00 07 75 */ extsb. r0, r0 /* 80049538 00046498 40 82 00 24 */ bne lbl_8004955C /* 8004953C 0004649C 80 AD 82 74 */ lwz r5, lbl_805A6E34@sda21(r13) /* 80049540 000464A0 38 60 00 00 */ li r3, 0 /* 80049544 000464A4 38 80 00 01 */ li r4, 1 /* 80049548 000464A8 48 34 09 AD */ bl __shl2i /* 8004954C 000464AC 38 00 00 01 */ li r0, 1 /* 80049550 000464B0 90 8D A1 EC */ stw r4, lbl_805A8DAC@sda21(r13) /* 80049554 000464B4 90 6D A1 E8 */ stw r3, lbl_805A8DA8@sda21(r13) /* 80049558 000464B8 98 0D A1 E1 */ stb r0, lbl_805A8DA1@sda21(r13) lbl_8004955C: /* 8004955C 000464BC 88 0D A1 F0 */ lbz r0, lbl_805A8DB0@sda21(r13) /* 80049560 000464C0 7C 00 07 75 */ extsb. r0, r0 /* 80049564 000464C4 40 82 00 74 */ bne lbl_800495D8 /* 80049568 000464C8 80 AD 82 78 */ lwz r5, lbl_805A6E38@sda21(r13) /* 8004956C 000464CC 38 60 00 00 */ li r3, 0 /* 80049570 000464D0 38 80 00 01 */ li r4, 1 /* 80049574 000464D4 48 34 09 81 */ bl __shl2i /* 80049578 000464D8 80 AD 82 7C */ lwz r5, lbl_805A6E3C@sda21(r13) /* 8004957C 000464DC 7C 9A 23 78 */ mr r26, r4 /* 80049580 000464E0 7C 7B 1B 78 */ mr r27, r3 /* 80049584 000464E4 38 60 00 00 */ li r3, 0 /* 80049588 000464E8 38 80 00 01 */ li r4, 1 /* 8004958C 000464EC 48 34 09 69 */ bl __shl2i /* 80049590 000464F0 80 AD 82 80 */ lwz r5, lbl_805A6E40@sda21(r13) /* 80049594 000464F4 7F 5A 23 78 */ or r26, r26, r4 /* 80049598 000464F8 7F 7B 1B 78 */ or r27, r27, r3 /* 8004959C 000464FC 38 60 00 00 */ li r3, 0 /* 800495A0 00046500 38 80 00 01 */ li r4, 1 /* 800495A4 00046504 48 34 09 51 */ bl __shl2i /* 800495A8 00046508 80 AD 82 84 */ lwz r5, lbl_805A6E44@sda21(r13) /* 800495AC 0004650C 7F 5A 23 78 */ or r26, r26, r4 /* 800495B0 00046510 7F 7B 1B 78 */ or r27, r27, r3 /* 800495B4 00046514 38 60 00 00 */ li r3, 0 /* 800495B8 00046518 38 80 00 01 */ li r4, 1 /* 800495BC 0004651C 48 34 09 39 */ bl __shl2i /* 800495C0 00046520 7F 5A 23 78 */ or r26, r26, r4 /* 800495C4 00046524 7F 7B 1B 78 */ or r27, r27, r3 /* 800495C8 00046528 38 00 00 01 */ li r0, 1 /* 800495CC 0004652C 93 4D A1 FC */ stw r26, lbl_805A8DBC@sda21(r13) /* 800495D0 00046530 93 6D A1 F8 */ stw r27, lbl_805A8DB8@sda21(r13) /* 800495D4 00046534 98 0D A1 F0 */ stb r0, lbl_805A8DB0@sda21(r13) lbl_800495D8: /* 800495D8 00046538 88 0D A2 00 */ lbz r0, lbl_805A8DC0@sda21(r13) /* 800495DC 0004653C 7C 00 07 75 */ extsb. r0, r0 /* 800495E0 00046540 40 82 00 40 */ bne lbl_80049620 /* 800495E4 00046544 3C 60 80 46 */ lis r3, lbl_8045C580@ha /* 800495E8 00046548 80 CD A1 E8 */ lwz r6, lbl_805A8DA8@sda21(r13) /* 800495EC 0004654C 38 A3 C5 80 */ addi r5, r3, lbl_8045C580@l /* 800495F0 00046550 39 00 00 03 */ li r8, 3 /* 800495F4 00046554 80 ED A1 EC */ lwz r7, lbl_805A8DAC@sda21(r13) /* 800495F8 00046558 38 00 00 01 */ li r0, 1 /* 800495FC 0004655C 80 6D A1 F8 */ lwz r3, lbl_805A8DB8@sda21(r13) /* 80049600 00046560 80 8D A1 FC */ lwz r4, lbl_805A8DBC@sda21(r13) /* 80049604 00046564 91 01 00 68 */ stw r8, 0x68(r1) /* 80049608 00046568 90 E5 00 04 */ stw r7, 4(r5) /* 8004960C 0004656C 90 C5 00 00 */ stw r6, 0(r5) /* 80049610 00046570 90 85 00 0C */ stw r4, 0xc(r5) /* 80049614 00046574 90 65 00 08 */ stw r3, 8(r5) /* 80049618 00046578 91 05 00 10 */ stw r8, 0x10(r5) /* 8004961C 0004657C 98 0D A2 00 */ stb r0, lbl_805A8DC0@sda21(r13) lbl_80049620: /* 80049620 00046580 7F C4 F3 78 */ mr r4, r30 /* 80049624 00046584 38 61 00 3C */ addi r3, r1, 0x3c /* 80049628 00046588 81 9E 00 00 */ lwz r12, 0(r30) /* 8004962C 0004658C 81 8C 00 40 */ lwz r12, 0x40(r12) /* 80049630 00046590 7D 89 03 A6 */ mtctr r12 /* 80049634 00046594 4E 80 04 21 */ bctrl /* 80049638 00046598 88 01 00 54 */ lbz r0, 0x54(r1) /* 8004963C 0004659C 28 00 00 00 */ cmplwi r0, 0 /* 80049640 000465A0 98 01 00 88 */ stb r0, 0x88(r1) /* 80049644 000465A4 41 82 00 3C */ beq lbl_80049680 /* 80049648 000465A8 34 61 00 70 */ addic. r3, r1, 0x70 /* 8004964C 000465AC 41 82 00 34 */ beq lbl_80049680 /* 80049650 000465B0 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80049654 000465B4 D0 03 00 00 */ stfs f0, 0(r3) /* 80049658 000465B8 C0 01 00 40 */ lfs f0, 0x40(r1) /* 8004965C 000465BC D0 03 00 04 */ stfs f0, 4(r3) /* 80049660 000465C0 C0 01 00 44 */ lfs f0, 0x44(r1) /* 80049664 000465C4 D0 03 00 08 */ stfs f0, 8(r3) /* 80049668 000465C8 C0 01 00 48 */ lfs f0, 0x48(r1) /* 8004966C 000465CC D0 03 00 0C */ stfs f0, 0xc(r3) /* 80049670 000465D0 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80049674 000465D4 D0 03 00 10 */ stfs f0, 0x10(r3) /* 80049678 000465D8 C0 01 00 50 */ lfs f0, 0x50(r1) /* 8004967C 000465DC D0 03 00 14 */ stfs f0, 0x14(r3) lbl_80049680: /* 80049680 000465E0 88 01 00 88 */ lbz r0, 0x88(r1) /* 80049684 000465E4 38 60 00 00 */ li r3, 0 /* 80049688 000465E8 98 61 00 54 */ stb r3, 0x54(r1) /* 8004968C 000465EC 28 00 00 00 */ cmplwi r0, 0 /* 80049690 000465F0 40 82 00 10 */ bne lbl_800496A0 /* 80049694 000465F4 98 61 00 88 */ stb r3, 0x88(r1) /* 80049698 000465F8 38 60 00 00 */ li r3, 0 /* 8004969C 000465FC 48 00 02 20 */ b lbl_800498BC lbl_800496A0: /* 800496A0 00046600 38 61 00 0C */ addi r3, r1, 0xc /* 800496A4 00046604 38 81 00 70 */ addi r4, r1, 0x70 /* 800496A8 00046608 48 2E DF 65 */ bl GetCenterPoint__6CAABoxCFv /* 800496AC 0004660C C0 A1 00 0C */ lfs f5, 0xc(r1) /* 800496B0 00046610 38 61 00 24 */ addi r3, r1, 0x24 /* 800496B4 00046614 C0 81 00 10 */ lfs f4, 0x10(r1) /* 800496B8 00046618 C0 61 00 14 */ lfs f3, 0x14(r1) /* 800496BC 0004661C C0 5D 00 04 */ lfs f2, 4(r29) /* 800496C0 00046620 C0 3D 00 08 */ lfs f1, 8(r29) /* 800496C4 00046624 C0 1D 00 00 */ lfs f0, 0(r29) /* 800496C8 00046628 EC 44 10 28 */ fsubs f2, f4, f2 /* 800496CC 0004662C EC 23 08 28 */ fsubs f1, f3, f1 /* 800496D0 00046630 D0 A1 00 30 */ stfs f5, 0x30(r1) /* 800496D4 00046634 EC 05 00 28 */ fsubs f0, f5, f0 /* 800496D8 00046638 D0 81 00 34 */ stfs f4, 0x34(r1) /* 800496DC 0004663C D0 61 00 38 */ stfs f3, 0x38(r1) /* 800496E0 00046640 D0 01 00 24 */ stfs f0, 0x24(r1) /* 800496E4 00046644 D0 41 00 28 */ stfs f2, 0x28(r1) /* 800496E8 00046648 D0 21 00 2C */ stfs f1, 0x2c(r1) /* 800496EC 0004664C 48 2C B0 0D */ bl CanBeNormalized__9CVector3fCFv /* 800496F0 00046650 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800496F4 00046654 41 82 01 BC */ beq lbl_800498B0 /* 800496F8 00046658 38 61 00 24 */ addi r3, r1, 0x24 /* 800496FC 0004665C 48 2C B1 BD */ bl Magnitude__9CVector3fCFv /* 80049700 00046660 FF E0 08 90 */ fmr f31, f1 /* 80049704 00046664 C0 42 85 64 */ lfs f2, lbl_805AA284@sda21(r2) /* 80049708 00046668 3C 60 80 46 */ lis r3, lbl_8045C580@ha /* 8004970C 0004666C C0 61 00 24 */ lfs f3, 0x24(r1) /* 80049710 00046670 38 E3 C5 80 */ addi r7, r3, lbl_8045C580@l /* 80049714 00046674 C0 21 00 28 */ lfs f1, 0x28(r1) /* 80049718 00046678 EC 82 F8 24 */ fdivs f4, f2, f31 /* 8004971C 0004667C C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80049720 00046680 7F 83 E3 78 */ mr r3, r28 /* 80049724 00046684 7F A4 EB 78 */ mr r4, r29 /* 80049728 00046688 7F E6 FB 78 */ mr r6, r31 /* 8004972C 0004668C 7F C8 F3 78 */ mr r8, r30 /* 80049730 00046690 EC 43 01 32 */ fmuls f2, f3, f4 /* 80049734 00046694 38 A1 00 30 */ addi r5, r1, 0x30 /* 80049738 00046698 EC 21 01 32 */ fmuls f1, f1, f4 /* 8004973C 0004669C EC 00 01 32 */ fmuls f0, f0, f4 /* 80049740 000466A0 D0 41 00 24 */ stfs f2, 0x24(r1) /* 80049744 000466A4 D0 21 00 28 */ stfs f1, 0x28(r1) /* 80049748 000466A8 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 8004974C 000466AC 48 00 38 21 */ bl "RayCollideWorld__13CStateManagerRC9CVector3fRC9CVector3fRCQ24rstl49reserved_vector<9TUniqueId,1024>RC15CMaterialFilterPC6CActor" /* 80049750 000466B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049754 000466B4 41 82 00 14 */ beq lbl_80049768 /* 80049758 000466B8 38 00 00 00 */ li r0, 0 /* 8004975C 000466BC 38 60 00 01 */ li r3, 1 /* 80049760 000466C0 98 01 00 88 */ stb r0, 0x88(r1) /* 80049764 000466C4 48 00 01 58 */ b lbl_800498BC lbl_80049768: /* 80049768 000466C8 FC 20 F8 90 */ fmr f1, f31 /* 8004976C 000466CC 7F A4 EB 78 */ mr r4, r29 /* 80049770 000466D0 38 61 00 8C */ addi r3, r1, 0x8c /* 80049774 000466D4 38 A1 00 24 */ addi r5, r1, 0x24 /* 80049778 000466D8 48 28 C8 F5 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff /* 8004977C 000466DC C1 A1 00 8C */ lfs f13, 0x8c(r1) /* 80049780 000466E0 3C 60 80 46 */ lis r3, lbl_8045C580@ha /* 80049784 000466E4 C1 81 00 90 */ lfs f12, 0x90(r1) /* 80049788 000466E8 38 A3 C5 80 */ addi r5, r3, lbl_8045C580@l /* 8004978C 000466EC C1 61 00 94 */ lfs f11, 0x94(r1) /* 80049790 000466F0 7F 83 E3 78 */ mr r3, r28 /* 80049794 000466F4 C1 41 00 98 */ lfs f10, 0x98(r1) /* 80049798 000466F8 38 81 00 C4 */ addi r4, r1, 0xc4 /* 8004979C 000466FC C1 21 00 9C */ lfs f9, 0x9c(r1) /* 800497A0 00046700 C1 01 00 A0 */ lfs f8, 0xa0(r1) /* 800497A4 00046704 C0 E1 00 A4 */ lfs f7, 0xa4(r1) /* 800497A8 00046708 C0 C1 00 A8 */ lfs f6, 0xa8(r1) /* 800497AC 0004670C C0 A1 00 AC */ lfs f5, 0xac(r1) /* 800497B0 00046710 C0 81 00 B0 */ lfs f4, 0xb0(r1) /* 800497B4 00046714 C0 61 00 B4 */ lfs f3, 0xb4(r1) /* 800497B8 00046718 C0 41 00 B8 */ lfs f2, 0xb8(r1) /* 800497BC 0004671C C0 21 00 BC */ lfs f1, 0xbc(r1) /* 800497C0 00046720 C0 01 00 C0 */ lfs f0, 0xc0(r1) /* 800497C4 00046724 D1 A1 00 C4 */ stfs f13, 0xc4(r1) /* 800497C8 00046728 D1 81 00 C8 */ stfs f12, 0xc8(r1) /* 800497CC 0004672C D1 61 00 CC */ stfs f11, 0xcc(r1) /* 800497D0 00046730 D1 41 00 D0 */ stfs f10, 0xd0(r1) /* 800497D4 00046734 D1 21 00 D4 */ stfs f9, 0xd4(r1) /* 800497D8 00046738 D1 01 00 D8 */ stfs f8, 0xd8(r1) /* 800497DC 0004673C D0 E1 00 DC */ stfs f7, 0xdc(r1) /* 800497E0 00046740 D0 C1 00 E0 */ stfs f6, 0xe0(r1) /* 800497E4 00046744 D0 A1 00 E4 */ stfs f5, 0xe4(r1) /* 800497E8 00046748 D0 81 00 E8 */ stfs f4, 0xe8(r1) /* 800497EC 0004674C D0 61 00 EC */ stfs f3, 0xec(r1) /* 800497F0 00046750 D0 41 00 F0 */ stfs f2, 0xf0(r1) /* 800497F4 00046754 D0 21 00 F4 */ stfs f1, 0xf4(r1) /* 800497F8 00046758 D0 01 00 F8 */ stfs f0, 0xf8(r1) /* 800497FC 0004675C 48 00 00 DD */ bl MultiRayCollideWorld__13CStateManagerRC5CMRayRC15CMaterialFilter /* 80049800 00046760 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049804 00046764 40 82 00 14 */ bne lbl_80049818 /* 80049808 00046768 38 00 00 00 */ li r0, 0 /* 8004980C 0004676C 38 60 00 00 */ li r3, 0 /* 80049810 00046770 98 01 00 88 */ stb r0, 0x88(r1) /* 80049814 00046774 48 00 00 A8 */ b lbl_800498BC lbl_80049818: /* 80049818 00046778 3C 80 80 5A */ lis r4, skZero3f@ha /* 8004981C 0004677C 38 61 00 C4 */ addi r3, r1, 0xc4 /* 80049820 00046780 38 E4 66 A0 */ addi r7, r4, skZero3f@l /* 80049824 00046784 38 81 00 70 */ addi r4, r1, 0x70 /* 80049828 00046788 C0 47 00 00 */ lfs f2, 0(r7) /* 8004982C 0004678C 38 A1 00 18 */ addi r5, r1, 0x18 /* 80049830 00046790 C0 27 00 04 */ lfs f1, 4(r7) /* 80049834 00046794 38 C1 00 08 */ addi r6, r1, 8 /* 80049838 00046798 C0 07 00 08 */ lfs f0, 8(r7) /* 8004983C 0004679C D0 41 00 18 */ stfs f2, 0x18(r1) /* 80049840 000467A0 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 80049844 000467A4 D0 01 00 20 */ stfs f0, 0x20(r1) /* 80049848 000467A8 48 28 9D 49 */ bl RayAABoxIntersection__13CollisionUtilFRC5CMRayRC6CAABoxR9CVector3fRf /* 8004984C 000467AC 2C 03 00 00 */ cmpwi r3, 0 /* 80049850 000467B0 40 82 00 14 */ bne lbl_80049864 /* 80049854 000467B4 38 00 00 00 */ li r0, 0 /* 80049858 000467B8 38 60 00 01 */ li r3, 1 /* 8004985C 000467BC 98 01 00 88 */ stb r0, 0x88(r1) /* 80049860 000467C0 48 00 00 5C */ b lbl_800498BC lbl_80049864: /* 80049864 000467C4 2C 03 00 01 */ cmpwi r3, 1 /* 80049868 000467C8 40 82 00 14 */ bne lbl_8004987C /* 8004986C 000467CC 38 00 00 00 */ li r0, 0 /* 80049870 000467D0 38 60 00 01 */ li r3, 1 /* 80049874 000467D4 98 01 00 88 */ stb r0, 0x88(r1) /* 80049878 000467D8 48 00 00 44 */ b lbl_800498BC lbl_8004987C: /* 8004987C 000467DC C0 01 00 08 */ lfs f0, 8(r1) /* 80049880 000467E0 3C 60 80 46 */ lis r3, lbl_8045C580@ha /* 80049884 000467E4 38 C3 C5 80 */ addi r6, r3, lbl_8045C580@l /* 80049888 000467E8 7F A4 EB 78 */ mr r4, r29 /* 8004988C 000467EC EC 20 07 F2 */ fmuls f1, f0, f31 /* 80049890 000467F0 7F 83 E3 78 */ mr r3, r28 /* 80049894 000467F4 7F E7 FB 78 */ mr r7, r31 /* 80049898 000467F8 7F C8 F3 78 */ mr r8, r30 /* 8004989C 000467FC 38 A1 00 24 */ addi r5, r1, 0x24 /* 800498A0 00046800 48 13 B4 71 */ bl "RayDynamicIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterQ24rstl49reserved_vector<9TUniqueId,1024>PC6CActorf" /* 800498A4 00046804 38 00 00 00 */ li r0, 0 /* 800498A8 00046808 98 01 00 88 */ stb r0, 0x88(r1) /* 800498AC 0004680C 48 00 00 10 */ b lbl_800498BC lbl_800498B0: /* 800498B0 00046810 38 00 00 00 */ li r0, 0 /* 800498B4 00046814 38 60 00 01 */ li r3, 1 /* 800498B8 00046818 98 01 00 88 */ stb r0, 0x88(r1) lbl_800498BC: /* 800498BC 0004681C E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 /* 800498C0 00046820 CB E1 01 20 */ lfd f31, 0x120(r1) /* 800498C4 00046824 BB 41 01 08 */ lmw r26, 0x108(r1) /* 800498C8 00046828 80 01 01 34 */ lwz r0, 0x134(r1) /* 800498CC 0004682C 7C 08 03 A6 */ mtlr r0 /* 800498D0 00046830 38 21 01 30 */ addi r1, r1, 0x130 /* 800498D4 00046834 4E 80 00 20 */ blr .global MultiRayCollideWorld__13CStateManagerRC5CMRayRC15CMaterialFilter MultiRayCollideWorld__13CStateManagerRC5CMRayRC15CMaterialFilter: /* 800498D8 00046838 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800498DC 0004683C 7C 08 02 A6 */ mflr r0 /* 800498E0 00046840 90 01 00 74 */ stw r0, 0x74(r1) /* 800498E4 00046844 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800498E8 00046848 93 C1 00 68 */ stw r30, 0x68(r1) /* 800498EC 0004684C 7C BE 2B 78 */ mr r30, r5 /* 800498F0 00046850 93 A1 00 64 */ stw r29, 0x64(r1) /* 800498F4 00046854 7C 9D 23 78 */ mr r29, r4 /* 800498F8 00046858 93 81 00 60 */ stw r28, 0x60(r1) /* 800498FC 0004685C 7C 7C 1B 78 */ mr r28, r3 /* 80049900 00046860 38 61 00 2C */ addi r3, r1, 0x2c /* 80049904 00046864 C0 84 00 34 */ lfs f4, 0x34(r4) /* 80049908 00046868 C0 64 00 30 */ lfs f3, 0x30(r4) /* 8004990C 0004686C FC 20 20 50 */ fneg f1, f4 /* 80049910 00046870 C0 A4 00 2C */ lfs f5, 0x2c(r4) /* 80049914 00046874 EC 04 00 F2 */ fmuls f0, f4, f3 /* 80049918 00046878 D0 61 00 50 */ stfs f3, 0x50(r1) /* 8004991C 0004687C EC 43 01 72 */ fmuls f2, f3, f5 /* 80049920 00046880 38 81 00 20 */ addi r4, r1, 0x20 /* 80049924 00046884 FC C0 08 18 */ frsp f6, f1 /* 80049928 00046888 D0 21 00 54 */ stfs f1, 0x54(r1) /* 8004992C 0004688C EC 25 01 78 */ fmsubs f1, f5, f5, f0 /* 80049930 00046890 D0 A1 00 58 */ stfs f5, 0x58(r1) /* 80049934 00046894 EC 05 01 B2 */ fmuls f0, f5, f6 /* 80049938 00046898 EC 46 11 38 */ fmsubs f2, f6, f4, f2 /* 8004993C 0004689C D0 21 00 24 */ stfs f1, 0x24(r1) /* 80049940 000468A0 EC 03 00 F8 */ fmsubs f0, f3, f3, f0 /* 80049944 000468A4 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80049948 000468A8 D0 01 00 28 */ stfs f0, 0x28(r1) /* 8004994C 000468AC 48 2C AF 05 */ bl AsNormalized__9CVector3fCFv /* 80049950 000468B0 C1 01 00 2C */ lfs f8, 0x2c(r1) /* 80049954 000468B4 3B E0 00 00 */ li r31, 0 /* 80049958 000468B8 C0 E1 00 30 */ lfs f7, 0x30(r1) /* 8004995C 000468BC C0 C1 00 34 */ lfs f6, 0x34(r1) /* 80049960 000468C0 C0 7D 00 2C */ lfs f3, 0x2c(r29) /* 80049964 000468C4 C0 9D 00 30 */ lfs f4, 0x30(r29) /* 80049968 000468C8 C1 3D 00 34 */ lfs f9, 0x34(r29) /* 8004996C 000468CC EC 06 00 F2 */ fmuls f0, f6, f3 /* 80049970 000468D0 C0 A2 85 FC */ lfs f5, lbl_805AA31C@sda21(r2) /* 80049974 000468D4 EC 48 01 32 */ fmuls f2, f8, f4 /* 80049978 000468D8 EC 27 02 72 */ fmuls f1, f7, f9 /* 8004997C 000468DC D1 01 00 44 */ stfs f8, 0x44(r1) /* 80049980 000468E0 EC 09 02 38 */ fmsubs f0, f9, f8, f0 /* 80049984 000468E4 EC 43 11 F8 */ fmsubs f2, f3, f7, f2 /* 80049988 000468E8 D0 E1 00 48 */ stfs f7, 0x48(r1) /* 8004998C 000468EC EC 24 09 B8 */ fmsubs f1, f4, f6, f1 /* 80049990 000468F0 EC 05 00 32 */ fmuls f0, f5, f0 /* 80049994 000468F4 D0 C1 00 4C */ stfs f6, 0x4c(r1) /* 80049998 000468F8 EC 65 00 B2 */ fmuls f3, f5, f2 /* 8004999C 000468FC EC 85 00 72 */ fmuls f4, f5, f1 /* 800499A0 00046900 EC 48 01 72 */ fmuls f2, f8, f5 /* 800499A4 00046904 D0 01 00 54 */ stfs f0, 0x54(r1) /* 800499A8 00046908 EC 27 01 72 */ fmuls f1, f7, f5 /* 800499AC 0004690C EC 06 01 72 */ fmuls f0, f6, f5 /* 800499B0 00046910 D0 81 00 50 */ stfs f4, 0x50(r1) /* 800499B4 00046914 D0 61 00 58 */ stfs f3, 0x58(r1) /* 800499B8 00046918 D0 41 00 44 */ stfs f2, 0x44(r1) /* 800499BC 0004691C D0 21 00 48 */ stfs f1, 0x48(r1) /* 800499C0 00046920 D0 01 00 4C */ stfs f0, 0x4c(r1) lbl_800499C4: /* 800499C4 00046924 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e /* 800499C8 00046928 41 82 00 30 */ beq lbl_800499F8 /* 800499CC 0004692C C0 41 00 50 */ lfs f2, 0x50(r1) /* 800499D0 00046930 38 E1 00 08 */ addi r7, r1, 8 /* 800499D4 00046934 C0 21 00 54 */ lfs f1, 0x54(r1) /* 800499D8 00046938 C0 01 00 58 */ lfs f0, 0x58(r1) /* 800499DC 0004693C FC 40 10 50 */ fneg f2, f2 /* 800499E0 00046940 FC 20 08 50 */ fneg f1, f1 /* 800499E4 00046944 FC 00 00 50 */ fneg f0, f0 /* 800499E8 00046948 D0 41 00 08 */ stfs f2, 8(r1) /* 800499EC 0004694C D0 21 00 0C */ stfs f1, 0xc(r1) /* 800499F0 00046950 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800499F4 00046954 48 00 00 08 */ b lbl_800499FC lbl_800499F8: /* 800499F8 00046958 38 E1 00 50 */ addi r7, r1, 0x50 lbl_800499FC: /* 800499FC 0004695C 57 E0 07 FF */ clrlwi. r0, r31, 0x1f /* 80049A00 00046960 41 82 00 0C */ beq lbl_80049A0C /* 80049A04 00046964 39 01 00 44 */ addi r8, r1, 0x44 /* 80049A08 00046968 48 00 00 2C */ b lbl_80049A34 lbl_80049A0C: /* 80049A0C 0004696C C0 41 00 44 */ lfs f2, 0x44(r1) /* 80049A10 00046970 39 01 00 14 */ addi r8, r1, 0x14 /* 80049A14 00046974 C0 21 00 48 */ lfs f1, 0x48(r1) /* 80049A18 00046978 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80049A1C 0004697C FC 40 10 50 */ fneg f2, f2 /* 80049A20 00046980 FC 20 08 50 */ fneg f1, f1 /* 80049A24 00046984 FC 00 00 50 */ fneg f0, f0 /* 80049A28 00046988 D0 41 00 14 */ stfs f2, 0x14(r1) /* 80049A2C 0004698C D0 21 00 18 */ stfs f1, 0x18(r1) /* 80049A30 00046990 D0 01 00 1C */ stfs f0, 0x1c(r1) lbl_80049A34: /* 80049A34 00046994 C0 7D 00 04 */ lfs f3, 4(r29) /* 80049A38 00046998 7F 83 E3 78 */ mr r3, r28 /* 80049A3C 0004699C C0 48 00 04 */ lfs f2, 4(r8) /* 80049A40 000469A0 7F C6 F3 78 */ mr r6, r30 /* 80049A44 000469A4 C0 3D 00 08 */ lfs f1, 8(r29) /* 80049A48 000469A8 38 81 00 38 */ addi r4, r1, 0x38 /* 80049A4C 000469AC C0 08 00 08 */ lfs f0, 8(r8) /* 80049A50 000469B0 EC C3 10 2A */ fadds f6, f3, f2 /* 80049A54 000469B4 C0 A7 00 04 */ lfs f5, 4(r7) /* 80049A58 000469B8 38 BD 00 2C */ addi r5, r29, 0x2c /* 80049A5C 000469BC C0 5D 00 00 */ lfs f2, 0(r29) /* 80049A60 000469C0 EC 81 00 2A */ fadds f4, f1, f0 /* 80049A64 000469C4 C0 28 00 00 */ lfs f1, 0(r8) /* 80049A68 000469C8 C0 67 00 08 */ lfs f3, 8(r7) /* 80049A6C 000469CC EC A6 28 2A */ fadds f5, f6, f5 /* 80049A70 000469D0 C0 07 00 00 */ lfs f0, 0(r7) /* 80049A74 000469D4 EC 42 08 2A */ fadds f2, f2, f1 /* 80049A78 000469D8 EC 64 18 2A */ fadds f3, f4, f3 /* 80049A7C 000469DC C0 3D 00 24 */ lfs f1, 0x24(r29) /* 80049A80 000469E0 D0 A1 00 3C */ stfs f5, 0x3c(r1) /* 80049A84 000469E4 EC 02 00 2A */ fadds f0, f2, f0 /* 80049A88 000469E8 D0 61 00 40 */ stfs f3, 0x40(r1) /* 80049A8C 000469EC D0 01 00 38 */ stfs f0, 0x38(r1) /* 80049A90 000469F0 48 13 B1 69 */ bl RayStaticIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter /* 80049A94 000469F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049A98 000469F8 40 82 00 10 */ bne lbl_80049AA8 /* 80049A9C 000469FC 3B FF 00 01 */ addi r31, r31, 1 /* 80049AA0 00046A00 2C 1F 00 04 */ cmpwi r31, 4 /* 80049AA4 00046A04 41 80 FF 20 */ blt lbl_800499C4 lbl_80049AA8: /* 80049AA8 00046A08 80 01 00 74 */ lwz r0, 0x74(r1) /* 80049AAC 00046A0C 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 80049AB0 00046A10 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 80049AB4 00046A14 83 C1 00 68 */ lwz r30, 0x68(r1) /* 80049AB8 00046A18 83 A1 00 64 */ lwz r29, 0x64(r1) /* 80049ABC 00046A1C 83 81 00 60 */ lwz r28, 0x60(r1) /* 80049AC0 00046A20 7C 08 03 A6 */ mtlr r0 /* 80049AC4 00046A24 38 21 00 70 */ addi r1, r1, 0x70 /* 80049AC8 00046A28 4E 80 00 20 */ blr .global TestBombHittingWater__13CStateManagerFRC6CActorRC9CVector3fR6CActor TestBombHittingWater__13CStateManagerFRC6CActorRC9CVector3fR6CActor: /* 80049ACC 00046A2C 94 21 FE F0 */ stwu r1, -0x110(r1) /* 80049AD0 00046A30 7C 08 02 A6 */ mflr r0 /* 80049AD4 00046A34 90 01 01 14 */ stw r0, 0x114(r1) /* 80049AD8 00046A38 DB E1 01 00 */ stfd f31, 0x100(r1) /* 80049ADC 00046A3C F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 /* 80049AE0 00046A40 DB C1 00 F0 */ stfd f30, 0xf0(r1) /* 80049AE4 00046A44 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 /* 80049AE8 00046A48 BF 41 00 D8 */ stmw r26, 0xd8(r1) /* 80049AEC 00046A4C 7C 7E 1B 78 */ mr r30, r3 /* 80049AF0 00046A50 7C 9F 23 78 */ mr r31, r4 /* 80049AF4 00046A54 7C BA 2B 78 */ mr r26, r5 /* 80049AF8 00046A58 7C DB 33 78 */ mr r27, r6 /* 80049AFC 00046A5C 38 61 00 30 */ addi r3, r1, 0x30 /* 80049B00 00046A60 3B 80 00 00 */ li r28, 0 /* 80049B04 00046A64 48 05 BE 01 */ bl "__ct__20TCastToPtr<7CWeapon>FR7CEntity" /* 80049B08 00046A68 80 63 00 04 */ lwz r3, 4(r3) /* 80049B0C 00046A6C 28 03 00 00 */ cmplwi r3, 0 /* 80049B10 00046A70 41 82 02 A0 */ beq lbl_80049DB0 /* 80049B14 00046A74 80 63 00 E8 */ lwz r3, 0xe8(r3) /* 80049B18 00046A78 54 60 05 AF */ rlwinm. r0, r3, 0, 0x16, 0x17 /* 80049B1C 00046A7C 41 82 02 94 */ beq lbl_80049DB0 /* 80049B20 00046A80 54 60 05 AD */ rlwinm. r0, r3, 0, 0x16, 0x16 /* 80049B24 00046A84 41 82 00 08 */ beq lbl_80049B2C /* 80049B28 00046A88 3B 80 00 01 */ li r28, 1 lbl_80049B2C: /* 80049B2C 00046A8C 7F 64 DB 78 */ mr r4, r27 /* 80049B30 00046A90 38 61 00 38 */ addi r3, r1, 0x38 /* 80049B34 00046A94 48 05 CD 99 */ bl "__ct__26TCastToPtr<12CScriptWater>FR7CEntity" /* 80049B38 00046A98 83 63 00 04 */ lwz r27, 4(r3) /* 80049B3C 00046A9C 28 1B 00 00 */ cmplwi r27, 0 /* 80049B40 00046AA0 41 82 02 70 */ beq lbl_80049DB0 /* 80049B44 00046AA4 7F 64 DB 78 */ mr r4, r27 /* 80049B48 00046AA8 38 61 00 74 */ addi r3, r1, 0x74 /* 80049B4C 00046AAC 48 02 CB 81 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv /* 80049B50 00046AB0 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 80049B54 00046AB4 38 61 00 40 */ addi r3, r1, 0x40 /* 80049B58 00046AB8 C0 61 00 88 */ lfs f3, 0x88(r1) /* 80049B5C 00046ABC C0 9A 00 04 */ lfs f4, 4(r26) /* 80049B60 00046AC0 C0 5A 00 00 */ lfs f2, 0(r26) /* 80049B64 00046AC4 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 80049B68 00046AC8 D0 41 00 68 */ stfs f2, 0x68(r1) /* 80049B6C 00046ACC D0 81 00 6C */ stfs f4, 0x6c(r1) /* 80049B70 00046AD0 D0 61 00 70 */ stfs f3, 0x70(r1) /* 80049B74 00046AD4 D0 21 00 40 */ stfs f1, 0x40(r1) /* 80049B78 00046AD8 D0 21 00 44 */ stfs f1, 0x44(r1) /* 80049B7C 00046ADC D0 01 00 48 */ stfs f0, 0x48(r1) /* 80049B80 00046AE0 48 2C AD 79 */ bl Normalize__9CVector3fFv /* 80049B84 00046AE4 7F 64 DB 78 */ mr r4, r27 /* 80049B88 00046AE8 38 61 00 8C */ addi r3, r1, 0x8c /* 80049B8C 00046AEC 48 02 CB 41 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv /* 80049B90 00046AF0 C0 61 00 44 */ lfs f3, 0x44(r1) /* 80049B94 00046AF4 57 9D 10 3A */ slwi r29, r28, 2 /* 80049B98 00046AF8 C0 1A 00 04 */ lfs f0, 4(r26) /* 80049B9C 00046AFC 38 62 85 44 */ addi r3, r2, lbl_805AA264@sda21 /* 80049BA0 00046B00 C0 81 00 40 */ lfs f4, 0x40(r1) /* 80049BA4 00046B04 EC 03 00 32 */ fmuls f0, f3, f0 /* 80049BA8 00046B08 C0 3A 00 00 */ lfs f1, 0(r26) /* 80049BAC 00046B0C C0 41 00 48 */ lfs f2, 0x48(r1) /* 80049BB0 00046B10 C0 A1 00 A0 */ lfs f5, 0xa0(r1) /* 80049BB4 00046B14 EC 04 00 7A */ fmadds f0, f4, f1, f0 /* 80049BB8 00046B18 C0 3A 00 08 */ lfs f1, 8(r26) /* 80049BBC 00046B1C 7C C3 EC 2E */ lfsx f6, r3, r29 /* 80049BC0 00046B20 D0 81 00 58 */ stfs f4, 0x58(r1) /* 80049BC4 00046B24 EC 02 00 7A */ fmadds f0, f2, f1, f0 /* 80049BC8 00046B28 D0 61 00 5C */ stfs f3, 0x5c(r1) /* 80049BCC 00046B2C EC 00 28 28 */ fsubs f0, f0, f5 /* 80049BD0 00046B30 D0 41 00 60 */ stfs f2, 0x60(r1) /* 80049BD4 00046B34 D0 A1 00 64 */ stfs f5, 0x64(r1) /* 80049BD8 00046B38 FC 20 00 50 */ fneg f1, f0 /* 80049BDC 00046B3C FC 01 30 40 */ fcmpo cr0, f1, f6 /* 80049BE0 00046B40 4C 40 13 82 */ cror 2, 0, 2 /* 80049BE4 00046B44 40 82 00 DC */ bne lbl_80049CC0 /* 80049BE8 00046B48 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80049BEC 00046B4C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049BF0 00046B50 40 81 00 D0 */ ble lbl_80049CC0 /* 80049BF4 00046B54 EC 01 30 24 */ fdivs f0, f1, f6 /* 80049BF8 00046B58 A0 1F 00 08 */ lhz r0, 8(r31) /* 80049BFC 00046B5C C0 22 85 64 */ lfs f1, lbl_805AA284@sda21(r2) /* 80049C00 00046B60 38 81 00 2C */ addi r4, r1, 0x2c /* 80049C04 00046B64 B0 01 00 2C */ sth r0, 0x2c(r1) /* 80049C08 00046B68 B0 01 00 28 */ sth r0, 0x28(r1) /* 80049C0C 00046B6C EF C1 00 28 */ fsubs f30, f1, f0 /* 80049C10 00046B70 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 80049C14 00046B74 48 0E 59 6D */ bl GetLastRippleDeltaTime__18CFluidPlaneManagerCF9TUniqueId /* 80049C18 00046B78 C0 02 86 00 */ lfs f0, lbl_805AA320@sda21(r2) /* 80049C1C 00046B7C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049C20 00046B80 4C 41 13 82 */ cror 2, 1, 2 /* 80049C24 00046B84 40 82 00 64 */ bne lbl_80049C88 /* 80049C28 00046B88 C0 22 85 D0 */ lfs f1, lbl_805AA2F0@sda21(r2) /* 80049C2C 00046B8C 38 62 85 54 */ addi r3, r2, lbl_805AA274@sda21 /* 80049C30 00046B90 C0 02 85 70 */ lfs f0, lbl_805AA290@sda21(r2) /* 80049C34 00046B94 EC 21 07 B2 */ fmuls f1, f1, f30 /* 80049C38 00046B98 7F E3 EC 2E */ lfsx f31, r3, r29 /* 80049C3C 00046B9C EC 21 00 32 */ fmuls f1, f1, f0 /* 80049C40 00046BA0 48 2C B1 B1 */ bl FastSinR__5CMathFf /* 80049C44 00046BA4 A0 1F 00 08 */ lhz r0, 8(r31) /* 80049C48 00046BA8 7F 66 DB 78 */ mr r6, r27 /* 80049C4C 00046BAC C0 02 86 08 */ lfs f0, lbl_805AA328@sda21(r2) /* 80049C50 00046BB0 7F C7 F3 78 */ mr r7, r30 /* 80049C54 00046BB4 B0 01 00 24 */ sth r0, 0x24(r1) /* 80049C58 00046BB8 38 81 00 24 */ addi r4, r1, 0x24 /* 80049C5C 00046BBC EC 40 07 F2 */ fmuls f2, f0, f31 /* 80049C60 00046BC0 C0 02 86 04 */ lfs f0, lbl_805AA324@sda21(r2) /* 80049C64 00046BC4 80 7B 01 B4 */ lwz r3, 0x1b4(r27) /* 80049C68 00046BC8 38 A1 00 68 */ addi r5, r1, 0x68 /* 80049C6C 00046BCC B0 01 00 20 */ sth r0, 0x20(r1) /* 80049C70 00046BD0 EC 22 00 72 */ fmuls f1, f2, f1 /* 80049C74 00046BD4 81 83 00 00 */ lwz r12, 0(r3) /* 80049C78 00046BD8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80049C7C 00046BDC EC 20 0F FA */ fmadds f1, f0, f31, f1 /* 80049C80 00046BE0 7D 89 03 A6 */ mtctr r12 /* 80049C84 00046BE4 4E 80 04 21 */ bctrl lbl_80049C88: /* 80049C88 00046BE8 2C 1C 00 00 */ cmpwi r28, 0 /* 80049C8C 00046BEC 40 82 01 24 */ bne lbl_80049DB0 /* 80049C90 00046BF0 A0 1F 00 08 */ lhz r0, 8(r31) /* 80049C94 00046BF4 FC 20 F0 90 */ fmr f1, f30 /* 80049C98 00046BF8 7F C5 F3 78 */ mr r5, r30 /* 80049C9C 00046BFC 7F 66 DB 78 */ mr r6, r27 /* 80049CA0 00046C00 B0 01 00 1C */ sth r0, 0x1c(r1) /* 80049CA4 00046C04 38 81 00 1C */ addi r4, r1, 0x1c /* 80049CA8 00046C08 38 E1 00 68 */ addi r7, r1, 0x68 /* 80049CAC 00046C0C B0 01 00 18 */ sth r0, 0x18(r1) /* 80049CB0 00046C10 39 00 00 01 */ li r8, 1 /* 80049CB4 00046C14 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 80049CB8 00046C18 48 0E 56 01 */ bl CreateSplash__18CFluidPlaneManagerF9TUniqueIdR13CStateManagerRC12CScriptWaterRC9CVector3ffb /* 80049CBC 00046C1C 48 00 00 F4 */ b lbl_80049DB0 lbl_80049CC0: /* 80049CC0 00046C20 3B 82 85 4C */ addi r28, r2, lbl_805AA26C@sda21 /* 80049CC4 00046C24 7C 1C EC 2E */ lfsx f0, r28, r29 /* 80049CC8 00046C28 FC 00 00 50 */ fneg f0, f0 /* 80049CCC 00046C2C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049CD0 00046C30 40 81 00 E0 */ ble lbl_80049DB0 /* 80049CD4 00046C34 C0 42 85 68 */ lfs f2, lbl_805AA288@sda21(r2) /* 80049CD8 00046C38 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 80049CDC 00046C3C 40 80 00 D4 */ bge lbl_80049DB0 /* 80049CE0 00046C40 FF E0 08 50 */ fneg f31, f1 /* 80049CE4 00046C44 C0 02 85 A0 */ lfs f0, lbl_805AA2C0@sda21(r2) /* 80049CE8 00046C48 3C 60 80 5A */ lis r3, lbl_8059FD18@ha /* 80049CEC 00046C4C D0 41 00 4C */ stfs f2, 0x4c(r1) /* 80049CF0 00046C50 38 E3 FD 18 */ addi r7, r3, lbl_8059FD18@l /* 80049CF4 00046C54 7F C4 F3 78 */ mr r4, r30 /* 80049CF8 00046C58 FC 20 F8 90 */ fmr f1, f31 /* 80049CFC 00046C5C D0 41 00 50 */ stfs f2, 0x50(r1) /* 80049D00 00046C60 7F 45 D3 78 */ mr r5, r26 /* 80049D04 00046C64 38 61 00 A8 */ addi r3, r1, 0xa8 /* 80049D08 00046C68 D0 01 00 54 */ stfs f0, 0x54(r1) /* 80049D0C 00046C6C 38 C1 00 4C */ addi r6, r1, 0x4c /* 80049D10 00046C70 48 00 32 89 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter /* 80049D14 00046C74 88 01 00 C8 */ lbz r0, 0xc8(r1) /* 80049D18 00046C78 28 00 00 00 */ cmplwi r0, 0 /* 80049D1C 00046C7C 40 82 00 94 */ bne lbl_80049DB0 /* 80049D20 00046C80 A0 1F 00 08 */ lhz r0, 8(r31) /* 80049D24 00046C84 38 81 00 14 */ addi r4, r1, 0x14 /* 80049D28 00046C88 B0 01 00 14 */ sth r0, 0x14(r1) /* 80049D2C 00046C8C B0 01 00 10 */ sth r0, 0x10(r1) /* 80049D30 00046C90 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 80049D34 00046C94 48 0E 58 4D */ bl GetLastRippleDeltaTime__18CFluidPlaneManagerCF9TUniqueId /* 80049D38 00046C98 C0 02 86 00 */ lfs f0, lbl_805AA320@sda21(r2) /* 80049D3C 00046C9C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049D40 00046CA0 4C 41 13 82 */ cror 2, 1, 2 /* 80049D44 00046CA4 40 82 00 6C */ bne lbl_80049DB0 /* 80049D48 00046CA8 7C 1C EC 2E */ lfsx f0, r28, r29 /* 80049D4C 00046CAC 38 62 85 5C */ addi r3, r2, lbl_805AA27C@sda21 /* 80049D50 00046CB0 C0 42 85 D0 */ lfs f2, lbl_805AA2F0@sda21(r2) /* 80049D54 00046CB4 EC 3F 00 24 */ fdivs f1, f31, f0 /* 80049D58 00046CB8 C0 02 85 70 */ lfs f0, lbl_805AA290@sda21(r2) /* 80049D5C 00046CBC 7F E3 EC 2E */ lfsx f31, r3, r29 /* 80049D60 00046CC0 EC 22 00 72 */ fmuls f1, f2, f1 /* 80049D64 00046CC4 EC 21 00 32 */ fmuls f1, f1, f0 /* 80049D68 00046CC8 48 2C B0 89 */ bl FastSinR__5CMathFf /* 80049D6C 00046CCC A0 1F 00 08 */ lhz r0, 8(r31) /* 80049D70 00046CD0 7F 66 DB 78 */ mr r6, r27 /* 80049D74 00046CD4 C0 02 86 08 */ lfs f0, lbl_805AA328@sda21(r2) /* 80049D78 00046CD8 7F C7 F3 78 */ mr r7, r30 /* 80049D7C 00046CDC B0 01 00 0C */ sth r0, 0xc(r1) /* 80049D80 00046CE0 38 81 00 0C */ addi r4, r1, 0xc /* 80049D84 00046CE4 EC 40 07 F2 */ fmuls f2, f0, f31 /* 80049D88 00046CE8 C0 02 86 04 */ lfs f0, lbl_805AA324@sda21(r2) /* 80049D8C 00046CEC 80 7B 01 B4 */ lwz r3, 0x1b4(r27) /* 80049D90 00046CF0 38 A1 00 68 */ addi r5, r1, 0x68 /* 80049D94 00046CF4 B0 01 00 08 */ sth r0, 8(r1) /* 80049D98 00046CF8 EC 22 00 72 */ fmuls f1, f2, f1 /* 80049D9C 00046CFC 81 83 00 00 */ lwz r12, 0(r3) /* 80049DA0 00046D00 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80049DA4 00046D04 EC 20 0F FA */ fmadds f1, f0, f31, f1 /* 80049DA8 00046D08 7D 89 03 A6 */ mtctr r12 /* 80049DAC 00046D0C 4E 80 04 21 */ bctrl lbl_80049DB0: /* 80049DB0 00046D10 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 /* 80049DB4 00046D14 CB E1 01 00 */ lfd f31, 0x100(r1) /* 80049DB8 00046D18 E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 /* 80049DBC 00046D1C CB C1 00 F0 */ lfd f30, 0xf0(r1) /* 80049DC0 00046D20 BB 41 00 D8 */ lmw r26, 0xd8(r1) /* 80049DC4 00046D24 80 01 01 14 */ lwz r0, 0x114(r1) /* 80049DC8 00046D28 7C 08 03 A6 */ mtlr r0 /* 80049DCC 00046D2C 38 21 01 10 */ addi r1, r1, 0x110 /* 80049DD0 00046D30 4E 80 00 20 */ blr .global ApplyLocalDamage__13CStateManagerFRC9CVector3fRC9CVector3fR6CActorfRC11CWeaponMode ApplyLocalDamage__13CStateManagerFRC9CVector3fRC9CVector3fR6CActorfRC11CWeaponMode: /* 80049DD4 00046D34 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80049DD8 00046D38 7C 08 02 A6 */ mflr r0 /* 80049DDC 00046D3C 90 01 00 84 */ stw r0, 0x84(r1) /* 80049DE0 00046D40 DB E1 00 70 */ stfd f31, 0x70(r1) /* 80049DE4 00046D44 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 80049DE8 00046D48 DB C1 00 60 */ stfd f30, 0x60(r1) /* 80049DEC 00046D4C F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 80049DF0 00046D50 DB A1 00 50 */ stfd f29, 0x50(r1) /* 80049DF4 00046D54 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 80049DF8 00046D58 BF 01 00 30 */ stmw r24, 0x30(r1) /* 80049DFC 00046D5C 7C D8 33 78 */ mr r24, r6 /* 80049E00 00046D60 7C 79 1B 78 */ mr r25, r3 /* 80049E04 00046D64 7F 03 C3 78 */ mr r3, r24 /* 80049E08 00046D68 7C 9A 23 78 */ mr r26, r4 /* 80049E0C 00046D6C 81 98 00 00 */ lwz r12, 0(r24) /* 80049E10 00046D70 FF A0 08 90 */ fmr f29, f1 /* 80049E14 00046D74 7C BB 2B 78 */ mr r27, r5 /* 80049E18 00046D78 7C FC 3B 78 */ mr r28, r7 /* 80049E1C 00046D7C 81 8C 00 34 */ lwz r12, 0x34(r12) /* 80049E20 00046D80 7F 24 CB 78 */ mr r4, r25 /* 80049E24 00046D84 7D 89 03 A6 */ mtctr r12 /* 80049E28 00046D88 4E 80 04 21 */ bctrl /* 80049E2C 00046D8C 7C 7F 1B 79 */ or. r31, r3, r3 /* 80049E30 00046D90 41 82 00 10 */ beq lbl_80049E40 /* 80049E34 00046D94 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80049E38 00046D98 FC 1D 00 40 */ fcmpo cr0, f29, f0 /* 80049E3C 00046D9C 40 80 00 0C */ bge lbl_80049E48 lbl_80049E40: /* 80049E40 00046DA0 38 60 00 00 */ li r3, 0 /* 80049E44 00046DA4 48 00 02 30 */ b lbl_8004A074 lbl_80049E48: /* 80049E48 00046DA8 C3 FF 00 00 */ lfs f31, 0(r31) /* 80049E4C 00046DAC FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80049E50 00046DB0 4C 40 13 82 */ cror 2, 0, 2 /* 80049E54 00046DB4 40 82 00 0C */ bne lbl_80049E60 /* 80049E58 00046DB8 38 60 00 01 */ li r3, 1 /* 80049E5C 00046DBC 48 00 02 18 */ b lbl_8004A074 lbl_80049E60: /* 80049E60 00046DC0 FF C0 E8 90 */ fmr f30, f29 /* 80049E64 00046DC4 7F 04 C3 78 */ mr r4, r24 /* 80049E68 00046DC8 38 61 00 24 */ addi r3, r1, 0x24 /* 80049E6C 00046DCC 48 06 25 95 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" /* 80049E70 00046DD0 83 C3 00 04 */ lwz r30, 4(r3) /* 80049E74 00046DD4 7F 04 C3 78 */ mr r4, r24 /* 80049E78 00046DD8 38 61 00 1C */ addi r3, r1, 0x1c /* 80049E7C 00046DDC 48 06 2C 4D */ bl "__ct__16TCastToPtr<10CPatterned>FR7CEntity" /* 80049E80 00046DE0 83 A3 00 04 */ lwz r29, 4(r3) /* 80049E84 00046DE4 28 1D 00 00 */ cmplwi r29, 0 /* 80049E88 00046DE8 40 82 00 14 */ bne lbl_80049E9C /* 80049E8C 00046DEC 7F 04 C3 78 */ mr r4, r24 /* 80049E90 00046DF0 38 61 00 14 */ addi r3, r1, 0x14 /* 80049E94 00046DF4 48 06 51 AD */ bl "__ct__30TCastToPtr<16CDestroyableRock>FP7CEntity" /* 80049E98 00046DF8 83 A3 00 04 */ lwz r29, 4(r3) lbl_80049E9C: /* 80049E9C 00046DFC 28 1E 00 00 */ cmplwi r30, 0 /* 80049EA0 00046E00 41 82 00 FC */ beq lbl_80049F9C /* 80049EA4 00046E04 80 79 08 70 */ lwz r3, 0x870(r25) /* 80049EA8 00046E08 4B FC 0A 59 */ bl IsInCinematicCamera__14CCameraManagerCFv /* 80049EAC 00046E0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049EB0 00046E10 40 82 00 28 */ bne lbl_80049ED8 /* 80049EB4 00046E14 80 1C 00 00 */ lwz r0, 0(r28) /* 80049EB8 00046E18 2C 00 00 08 */ cmpwi r0, 8 /* 80049EBC 00046E1C 40 82 00 24 */ bne lbl_80049EE0 /* 80049EC0 00046E20 80 79 08 B8 */ lwz r3, 0x8b8(r25) /* 80049EC4 00046E24 38 80 00 17 */ li r4, 0x17 /* 80049EC8 00046E28 80 63 00 00 */ lwz r3, 0(r3) /* 80049ECC 00046E2C 48 04 7B F5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 80049ED0 00046E30 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049ED4 00046E34 41 82 00 0C */ beq lbl_80049EE0 lbl_80049ED8: /* 80049ED8 00046E38 38 60 00 00 */ li r3, 0 /* 80049EDC 00046E3C 48 00 01 98 */ b lbl_8004A074 lbl_80049EE0: /* 80049EE0 00046E40 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 80049EE4 00046E44 88 03 02 28 */ lbz r0, 0x228(r3) /* 80049EE8 00046E48 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80049EEC 00046E4C 41 82 00 0C */ beq lbl_80049EF8 /* 80049EF0 00046E50 48 18 99 C9 */ bl GetHardModeDamageMultiplier__10CGameStateCFv /* 80049EF4 00046E54 EF DE 00 72 */ fmuls f30, f30, f1 lbl_80049EF8: /* 80049EF8 00046E58 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80049EFC 00046E5C 38 80 00 16 */ li r4, 0x16 /* 80049F00 00046E60 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80049F04 00046E64 80 79 08 B8 */ lwz r3, 0x8b8(r25) /* 80049F08 00046E68 80 63 00 00 */ lwz r3, 0(r3) /* 80049F0C 00046E6C 48 04 7B B5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 80049F10 00046E70 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049F14 00046E74 41 82 00 10 */ beq lbl_80049F24 /* 80049F18 00046E78 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80049F1C 00046E7C C0 03 03 00 */ lfs f0, 0x300(r3) /* 80049F20 00046E80 D0 01 00 10 */ stfs f0, 0x10(r1) lbl_80049F24: /* 80049F24 00046E84 80 79 08 B8 */ lwz r3, 0x8b8(r25) /* 80049F28 00046E88 38 80 00 15 */ li r4, 0x15 /* 80049F2C 00046E8C 80 63 00 00 */ lwz r3, 0(r3) /* 80049F30 00046E90 48 04 7B 91 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 80049F34 00046E94 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049F38 00046E98 41 82 00 24 */ beq lbl_80049F5C /* 80049F3C 00046E9C 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) /* 80049F40 00046EA0 38 61 00 10 */ addi r3, r1, 0x10 /* 80049F44 00046EA4 38 81 00 0C */ addi r4, r1, 0xc /* 80049F48 00046EA8 C0 05 03 04 */ lfs f0, 0x304(r5) /* 80049F4C 00046EAC D0 01 00 0C */ stfs f0, 0xc(r1) /* 80049F50 00046EB0 48 00 57 E1 */ bl "Max__5CMathFRCfRCf" /* 80049F54 00046EB4 C0 03 00 00 */ lfs f0, 0(r3) /* 80049F58 00046EB8 D0 01 00 10 */ stfs f0, 0x10(r1) lbl_80049F5C: /* 80049F5C 00046EBC 80 79 08 B8 */ lwz r3, 0x8b8(r25) /* 80049F60 00046EC0 38 80 00 17 */ li r4, 0x17 /* 80049F64 00046EC4 80 63 00 00 */ lwz r3, 0(r3) /* 80049F68 00046EC8 48 04 7B 59 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 80049F6C 00046ECC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80049F70 00046ED0 41 82 00 24 */ beq lbl_80049F94 /* 80049F74 00046ED4 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) /* 80049F78 00046ED8 38 61 00 10 */ addi r3, r1, 0x10 /* 80049F7C 00046EDC 38 81 00 08 */ addi r4, r1, 8 /* 80049F80 00046EE0 C0 05 03 08 */ lfs f0, 0x308(r5) /* 80049F84 00046EE4 D0 01 00 08 */ stfs f0, 8(r1) /* 80049F88 00046EE8 48 00 57 A9 */ bl "Max__5CMathFRCfRCf" /* 80049F8C 00046EEC C0 03 00 00 */ lfs f0, 0(r3) /* 80049F90 00046EF0 D0 01 00 10 */ stfs f0, 0x10(r1) lbl_80049F94: /* 80049F94 00046EF4 C0 01 00 10 */ lfs f0, 0x10(r1) /* 80049F98 00046EF8 EF C0 F7 BC */ fnmsubs f30, f0, f30, f30 lbl_80049F9C: /* 80049F9C 00046EFC EF BF F0 28 */ fsubs f29, f31, f30 /* 80049FA0 00046F00 C8 02 86 10 */ lfd f0, lbl_805AA330@sda21(r2) /* 80049FA4 00046F04 EC 3D F8 28 */ fsubs f1, f29, f31 /* 80049FA8 00046F08 D3 BF 00 00 */ stfs f29, 0(r31) /* 80049FAC 00046F0C FC 20 0A 10 */ fabs f1, f1 /* 80049FB0 00046F10 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049FB4 00046F14 7C 00 00 26 */ mfcr r0 /* 80049FB8 00046F18 28 1E 00 00 */ cmplwi r30, 0 /* 80049FBC 00046F1C 54 00 0F FE */ srwi r0, r0, 0x1f /* 80049FC0 00046F20 7C 00 00 34 */ cntlzw r0, r0 /* 80049FC4 00046F24 54 1F D9 7E */ srwi r31, r0, 5 /* 80049FC8 00046F28 41 82 00 4C */ beq lbl_8004A014 /* 80049FCC 00046F2C FC 20 F0 90 */ fmr f1, f30 /* 80049FD0 00046F30 80 DC 00 00 */ lwz r6, 0(r28) /* 80049FD4 00046F34 7F C3 F3 78 */ mr r3, r30 /* 80049FD8 00046F38 7F 45 D3 78 */ mr r5, r26 /* 80049FDC 00046F3C 7F 27 CB 78 */ mr r7, r25 /* 80049FE0 00046F40 57 E4 06 3E */ clrlwi r4, r31, 0x18 /* 80049FE4 00046F44 4B FC 85 59 */ bl TakeDamage__7CPlayerFbRC9CVector3ff11EWeaponTypeR13CStateManager /* 80049FE8 00046F48 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 80049FEC 00046F4C FC 1D 00 40 */ fcmpo cr0, f29, f0 /* 80049FF0 00046F50 4C 40 13 82 */ cror 2, 0, 2 /* 80049FF4 00046F54 40 82 00 7C */ bne lbl_8004A070 /* 80049FF8 00046F58 80 79 08 B8 */ lwz r3, 0x8b8(r25) /* 80049FFC 00046F5C 38 80 00 00 */ li r4, 0 /* 8004A000 00046F60 80 63 00 00 */ lwz r3, 0(r3) /* 8004A004 00046F64 88 03 00 00 */ lbz r0, 0(r3) /* 8004A008 00046F68 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 /* 8004A00C 00046F6C 98 03 00 00 */ stb r0, 0(r3) /* 8004A010 00046F70 48 00 00 60 */ b lbl_8004A070 lbl_8004A014: /* 8004A014 00046F74 28 1D 00 00 */ cmplwi r29, 0 /* 8004A018 00046F78 41 82 00 58 */ beq lbl_8004A070 /* 8004A01C 00046F7C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 8004A020 00046F80 41 82 00 20 */ beq lbl_8004A040 /* 8004A024 00046F84 7F A3 EB 78 */ mr r3, r29 /* 8004A028 00046F88 FC 20 F0 90 */ fmr f1, f30 /* 8004A02C 00046F8C 81 9D 00 00 */ lwz r12, 0(r29) /* 8004A030 00046F90 7F 64 DB 78 */ mr r4, r27 /* 8004A034 00046F94 81 8C 00 90 */ lwz r12, 0x90(r12) /* 8004A038 00046F98 7D 89 03 A6 */ mtctr r12 /* 8004A03C 00046F9C 4E 80 04 21 */ bctrl lbl_8004A040: /* 8004A040 00046FA0 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004A044 00046FA4 FC 1D 00 40 */ fcmpo cr0, f29, f0 /* 8004A048 00046FA8 4C 40 13 82 */ cror 2, 0, 2 /* 8004A04C 00046FAC 40 82 00 24 */ bne lbl_8004A070 /* 8004A050 00046FB0 7F A3 EB 78 */ mr r3, r29 /* 8004A054 00046FB4 7F 24 CB 78 */ mr r4, r25 /* 8004A058 00046FB8 81 9D 00 00 */ lwz r12, 0(r29) /* 8004A05C 00046FBC 7F 65 DB 78 */ mr r5, r27 /* 8004A060 00046FC0 38 C0 00 14 */ li r6, 0x14 /* 8004A064 00046FC4 81 8C 00 84 */ lwz r12, 0x84(r12) /* 8004A068 00046FC8 7D 89 03 A6 */ mtctr r12 /* 8004A06C 00046FCC 4E 80 04 21 */ bctrl lbl_8004A070: /* 8004A070 00046FD0 57 E3 06 3E */ clrlwi r3, r31, 0x18 lbl_8004A074: /* 8004A074 00046FD4 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 8004A078 00046FD8 CB E1 00 70 */ lfd f31, 0x70(r1) /* 8004A07C 00046FDC E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 8004A080 00046FE0 CB C1 00 60 */ lfd f30, 0x60(r1) /* 8004A084 00046FE4 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 /* 8004A088 00046FE8 CB A1 00 50 */ lfd f29, 0x50(r1) /* 8004A08C 00046FEC BB 01 00 30 */ lmw r24, 0x30(r1) /* 8004A090 00046FF0 80 01 00 84 */ lwz r0, 0x84(r1) /* 8004A094 00046FF4 7C 08 03 A6 */ mtlr r0 /* 8004A098 00046FF8 38 21 00 80 */ addi r1, r1, 0x80 /* 8004A09C 00046FFC 4E 80 00 20 */ blr .global ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f: /* 8004A0A0 00047000 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 8004A0A4 00047004 7C 08 02 A6 */ mflr r0 /* 8004A0A8 00047008 90 01 00 C4 */ stw r0, 0xc4(r1) /* 8004A0AC 0004700C BE A1 00 94 */ stmw r21, 0x94(r1) /* 8004A0B0 00047010 7C 97 23 78 */ mr r23, r4 /* 8004A0B4 00047014 7C 76 1B 78 */ mr r22, r3 /* 8004A0B8 00047018 7C B5 2B 78 */ mr r21, r5 /* 8004A0BC 0004701C 7C D8 33 78 */ mr r24, r6 /* 8004A0C0 00047020 7C F9 3B 78 */ mr r25, r7 /* 8004A0C4 00047024 7D 1A 43 78 */ mr r26, r8 /* 8004A0C8 00047028 7D 3B 4B 78 */ mr r27, r9 /* 8004A0CC 0004702C A0 04 00 00 */ lhz r0, 0(r4) /* 8004A0D0 00047030 38 81 00 18 */ addi r4, r1, 0x18 /* 8004A0D4 00047034 B0 01 00 18 */ sth r0, 0x18(r1) /* 8004A0D8 00047038 48 00 24 CD */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 8004A0DC 0004703C A0 15 00 00 */ lhz r0, 0(r21) /* 8004A0E0 00047040 7C 75 1B 78 */ mr r21, r3 /* 8004A0E4 00047044 7E C3 B3 78 */ mr r3, r22 /* 8004A0E8 00047048 38 81 00 14 */ addi r4, r1, 0x14 /* 8004A0EC 0004704C B0 01 00 14 */ sth r0, 0x14(r1) /* 8004A0F0 00047050 48 00 24 85 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8004A0F4 00047054 7C 7F 1B 78 */ mr r31, r3 /* 8004A0F8 00047058 7E A4 AB 78 */ mr r4, r21 /* 8004A0FC 0004705C 38 61 00 24 */ addi r3, r1, 0x24 /* 8004A100 00047060 48 06 5B 91 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 8004A104 00047064 83 C3 00 04 */ lwz r30, 4(r3) /* 8004A108 00047068 7F E4 FB 78 */ mr r4, r31 /* 8004A10C 0004706C 38 61 00 34 */ addi r3, r1, 0x34 /* 8004A110 00047070 48 06 5B 81 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 8004A114 00047074 83 A3 00 04 */ lwz r29, 4(r3) /* 8004A118 00047078 7F E4 FB 78 */ mr r4, r31 /* 8004A11C 0004707C 38 61 00 1C */ addi r3, r1, 0x1c /* 8004A120 00047080 48 06 22 75 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" /* 8004A124 00047084 80 63 00 04 */ lwz r3, 4(r3) /* 8004A128 00047088 28 1D 00 00 */ cmplwi r29, 0 /* 8004A12C 0004708C 7C 03 00 D0 */ neg r0, r3 /* 8004A130 00047090 7C 00 1B 78 */ or r0, r0, r3 /* 8004A134 00047094 54 15 0F FE */ srwi r21, r0, 0x1f /* 8004A138 00047098 41 82 03 08 */ beq lbl_8004A440 /* 8004A13C 0004709C 7F A3 EB 78 */ mr r3, r29 /* 8004A140 000470A0 7E C4 B3 78 */ mr r4, r22 /* 8004A144 000470A4 81 9D 00 00 */ lwz r12, 0(r29) /* 8004A148 000470A8 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8004A14C 000470AC 7D 89 03 A6 */ mtctr r12 /* 8004A150 000470B0 4E 80 04 21 */ bctrl /* 8004A154 000470B4 28 03 00 00 */ cmplwi r3, 0 /* 8004A158 000470B8 41 82 02 4C */ beq lbl_8004A3A4 /* 8004A15C 000470BC C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 8004A160 000470C0 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 8004A164 000470C4 D0 21 00 84 */ stfs f1, 0x84(r1) /* 8004A168 000470C8 D0 21 00 88 */ stfs f1, 0x88(r1) /* 8004A16C 000470CC D0 21 00 8C */ stfs f1, 0x8c(r1) /* 8004A170 000470D0 D0 01 00 78 */ stfs f0, 0x78(r1) /* 8004A174 000470D4 D0 21 00 7C */ stfs f1, 0x7c(r1) /* 8004A178 000470D8 D0 21 00 80 */ stfs f1, 0x80(r1) /* 8004A17C 000470DC C0 03 00 00 */ lfs f0, 0(r3) /* 8004A180 000470E0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8004A184 000470E4 7C 00 00 26 */ mfcr r0 /* 8004A188 000470E8 28 1E 00 00 */ cmplwi r30, 0 /* 8004A18C 000470EC 54 1C 17 FE */ rlwinm r28, r0, 2, 0x1f, 0x1f /* 8004A190 000470F0 41 82 00 34 */ beq lbl_8004A1C4 /* 8004A194 000470F4 C0 5E 00 60 */ lfs f2, 0x60(r30) /* 8004A198 000470F8 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 8004A19C 000470FC C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8004A1A0 00047100 D0 01 00 84 */ stfs f0, 0x84(r1) /* 8004A1A4 00047104 D0 21 00 88 */ stfs f1, 0x88(r1) /* 8004A1A8 00047108 D0 41 00 8C */ stfs f2, 0x8c(r1) /* 8004A1AC 0004710C C0 5E 00 58 */ lfs f2, 0x58(r30) /* 8004A1B0 00047110 C0 3E 00 48 */ lfs f1, 0x48(r30) /* 8004A1B4 00047114 C0 1E 00 38 */ lfs f0, 0x38(r30) /* 8004A1B8 00047118 D0 01 00 78 */ stfs f0, 0x78(r1) /* 8004A1BC 0004711C D0 21 00 7C */ stfs f1, 0x7c(r1) /* 8004A1C0 00047120 D0 41 00 80 */ stfs f2, 0x80(r1) lbl_8004A1C4: /* 8004A1C4 00047124 28 1E 00 00 */ cmplwi r30, 0 /* 8004A1C8 00047128 38 00 00 00 */ li r0, 0 /* 8004A1CC 0004712C 40 82 00 0C */ bne lbl_8004A1D8 /* 8004A1D0 00047130 28 15 00 00 */ cmplwi r21, 0 /* 8004A1D4 00047134 41 82 00 08 */ beq lbl_8004A1DC lbl_8004A1D8: /* 8004A1D8 00047138 38 00 00 01 */ li r0, 1 lbl_8004A1DC: /* 8004A1DC 0004713C 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 8004A1E0 00047140 41 82 00 28 */ beq lbl_8004A208 /* 8004A1E4 00047144 7F A3 EB 78 */ mr r3, r29 /* 8004A1E8 00047148 7F 26 CB 78 */ mr r6, r25 /* 8004A1EC 0004714C 81 9D 00 00 */ lwz r12, 0(r29) /* 8004A1F0 00047150 38 81 00 84 */ addi r4, r1, 0x84 /* 8004A1F4 00047154 38 A1 00 78 */ addi r5, r1, 0x78 /* 8004A1F8 00047158 81 8C 00 3C */ lwz r12, 0x3c(r12) /* 8004A1FC 0004715C 7D 89 03 A6 */ mtctr r12 /* 8004A200 00047160 4E 80 04 21 */ bctrl /* 8004A204 00047164 48 00 00 18 */ b lbl_8004A21C lbl_8004A208: /* 8004A208 00047168 7F A3 EB 78 */ mr r3, r29 /* 8004A20C 0004716C 81 9D 00 00 */ lwz r12, 0(r29) /* 8004A210 00047170 81 8C 00 38 */ lwz r12, 0x38(r12) /* 8004A214 00047174 7D 89 03 A6 */ mtctr r12 /* 8004A218 00047178 4E 80 04 21 */ bctrl lbl_8004A21C: /* 8004A21C 0004717C 80 19 00 00 */ lwz r0, 0(r25) /* 8004A220 00047180 7C 75 1B 78 */ mr r21, r3 /* 8004A224 00047184 2C 00 FF FF */ cmpwi r0, -1 /* 8004A228 00047188 41 82 00 18 */ beq lbl_8004A240 /* 8004A22C 0004718C 7F 24 CB 78 */ mr r4, r25 /* 8004A230 00047190 38 A0 00 00 */ li r5, 0 /* 8004A234 00047194 48 0B 84 D5 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode /* 8004A238 00047198 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004A23C 0004719C 41 82 00 68 */ beq lbl_8004A2A4 lbl_8004A240: /* 8004A240 000471A0 7F 23 CB 78 */ mr r3, r25 /* 8004A244 000471A4 7E A4 AB 78 */ mr r4, r21 /* 8004A248 000471A8 48 07 92 B5 */ bl GetDamage__11CDamageInfoCFRC20CDamageVulnerability /* 8004A24C 000471AC C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004A250 000471B0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004A254 000471B4 40 81 00 1C */ ble lbl_8004A270 /* 8004A258 000471B8 7E C3 B3 78 */ mr r3, r22 /* 8004A25C 000471BC 7F A6 EB 78 */ mr r6, r29 /* 8004A260 000471C0 7F 27 CB 78 */ mr r7, r25 /* 8004A264 000471C4 38 81 00 84 */ addi r4, r1, 0x84 /* 8004A268 000471C8 38 A1 00 78 */ addi r5, r1, 0x78 /* 8004A26C 000471CC 4B FF FB 69 */ bl ApplyLocalDamage__13CStateManagerFRC9CVector3fRC9CVector3fR6CActorfRC11CWeaponMode lbl_8004A270: /* 8004A270 000471D0 7F A3 EB 78 */ mr r3, r29 /* 8004A274 000471D4 7E C5 B3 78 */ mr r5, r22 /* 8004A278 000471D8 38 80 00 16 */ li r4, 0x16 /* 8004A27C 000471DC 38 C0 FF FF */ li r6, -1 /* 8004A280 000471E0 48 00 6E 41 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8004A284 000471E4 A0 17 00 00 */ lhz r0, 0(r23) /* 8004A288 000471E8 7E C3 B3 78 */ mr r3, r22 /* 8004A28C 000471EC 7F A4 EB 78 */ mr r4, r29 /* 8004A290 000471F0 38 A1 00 10 */ addi r5, r1, 0x10 /* 8004A294 000471F4 B0 01 00 10 */ sth r0, 0x10(r1) /* 8004A298 000471F8 38 C0 00 29 */ li r6, 0x29 /* 8004A29C 000471FC 4B FF 9C 35 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage /* 8004A2A0 00047200 48 00 00 34 */ b lbl_8004A2D4 lbl_8004A2A4: /* 8004A2A4 00047204 7F A3 EB 78 */ mr r3, r29 /* 8004A2A8 00047208 7E C5 B3 78 */ mr r5, r22 /* 8004A2AC 0004720C 38 80 00 17 */ li r4, 0x17 /* 8004A2B0 00047210 38 C0 FF FF */ li r6, -1 /* 8004A2B4 00047214 48 00 6E 0D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8004A2B8 00047218 A0 17 00 00 */ lhz r0, 0(r23) /* 8004A2BC 0004721C 7E C3 B3 78 */ mr r3, r22 /* 8004A2C0 00047220 7F A4 EB 78 */ mr r4, r29 /* 8004A2C4 00047224 38 A1 00 0C */ addi r5, r1, 0xc /* 8004A2C8 00047228 B0 01 00 0C */ sth r0, 0xc(r1) /* 8004A2CC 0004722C 38 C0 00 2A */ li r6, 0x2a /* 8004A2D0 00047230 4B FF 9C 01 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage lbl_8004A2D4: /* 8004A2D4 00047234 28 1C 00 00 */ cmplwi r28, 0 /* 8004A2D8 00047238 41 82 00 CC */ beq lbl_8004A3A4 /* 8004A2DC 0004723C 28 1E 00 00 */ cmplwi r30, 0 /* 8004A2E0 00047240 41 82 00 C4 */ beq lbl_8004A3A4 /* 8004A2E4 00047244 C0 19 00 14 */ lfs f0, 0x14(r25) /* 8004A2E8 00047248 C0 82 85 68 */ lfs f4, lbl_805AA288@sda21(r2) /* 8004A2EC 0004724C FC 00 20 40 */ fcmpo cr0, f0, f4 /* 8004A2F0 00047250 40 81 00 B4 */ ble lbl_8004A3A4 /* 8004A2F4 00047254 C0 5D 00 50 */ lfs f2, 0x50(r29) /* 8004A2F8 00047258 38 00 00 00 */ li r0, 0 /* 8004A2FC 0004725C C0 3E 00 50 */ lfs f1, 0x50(r30) /* 8004A300 00047260 C0 1B 00 00 */ lfs f0, 0(r27) /* 8004A304 00047264 C0 7D 00 60 */ lfs f3, 0x60(r29) /* 8004A308 00047268 EC A2 08 28 */ fsubs f5, f2, f1 /* 8004A30C 0004726C C0 5E 00 60 */ lfs f2, 0x60(r30) /* 8004A310 00047270 FC 04 00 00 */ fcmpu cr0, f4, f0 /* 8004A314 00047274 C0 3D 00 40 */ lfs f1, 0x40(r29) /* 8004A318 00047278 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8004A31C 0004727C EC 43 10 28 */ fsubs f2, f3, f2 /* 8004A320 00047280 EC 01 00 28 */ fsubs f0, f1, f0 /* 8004A324 00047284 D0 A1 00 70 */ stfs f5, 0x70(r1) /* 8004A328 00047288 D0 41 00 74 */ stfs f2, 0x74(r1) /* 8004A32C 0004728C D0 01 00 6C */ stfs f0, 0x6c(r1) /* 8004A330 00047290 40 82 00 1C */ bne lbl_8004A34C /* 8004A334 00047294 C0 1B 00 04 */ lfs f0, 4(r27) /* 8004A338 00047298 FC 04 00 00 */ fcmpu cr0, f4, f0 /* 8004A33C 0004729C 40 82 00 10 */ bne lbl_8004A34C /* 8004A340 000472A0 C0 1B 00 08 */ lfs f0, 8(r27) /* 8004A344 000472A4 FC 04 00 00 */ fcmpu cr0, f4, f0 /* 8004A348 000472A8 41 82 00 08 */ beq lbl_8004A350 lbl_8004A34C: /* 8004A34C 000472AC 38 00 00 01 */ li r0, 1 lbl_8004A350: /* 8004A350 000472B0 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 8004A354 000472B4 41 82 00 0C */ beq lbl_8004A360 /* 8004A358 000472B8 7F 64 DB 78 */ mr r4, r27 /* 8004A35C 000472BC 48 00 00 08 */ b lbl_8004A364 lbl_8004A360: /* 8004A360 000472C0 38 81 00 6C */ addi r4, r1, 0x6c lbl_8004A364: /* 8004A364 000472C4 C0 44 00 04 */ lfs f2, 4(r4) /* 8004A368 000472C8 38 61 00 54 */ addi r3, r1, 0x54 /* 8004A36C 000472CC C0 24 00 00 */ lfs f1, 0(r4) /* 8004A370 000472D0 38 81 00 60 */ addi r4, r1, 0x60 /* 8004A374 000472D4 C0 02 85 F8 */ lfs f0, lbl_805AA318@sda21(r2) /* 8004A378 000472D8 D0 21 00 60 */ stfs f1, 0x60(r1) /* 8004A37C 000472DC D0 41 00 64 */ stfs f2, 0x64(r1) /* 8004A380 000472E0 D0 01 00 68 */ stfs f0, 0x68(r1) /* 8004A384 000472E4 48 2C A4 CD */ bl AsNormalized__9CVector3fCFv /* 8004A388 000472E8 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 8004A38C 000472EC 7E C3 B3 78 */ mr r3, r22 /* 8004A390 000472F0 7F A4 EB 78 */ mr r4, r29 /* 8004A394 000472F4 7F 25 CB 78 */ mr r5, r25 /* 8004A398 000472F8 7E A6 AB 78 */ mr r6, r21 /* 8004A39C 000472FC 38 E1 00 54 */ addi r7, r1, 0x54 /* 8004A3A0 00047300 4B FF E6 F9 */ bl ApplyKnockBack__13CStateManagerFR6CActorRC11CDamageInfoRC20CDamageVulnerabilityRC9CVector3ff lbl_8004A3A4: /* 8004A3A4 00047304 28 1E 00 00 */ cmplwi r30, 0 /* 8004A3A8 00047308 41 82 00 38 */ beq lbl_8004A3E0 /* 8004A3AC 0004730C C0 39 00 10 */ lfs f1, 0x10(r25) /* 8004A3B0 00047310 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004A3B4 00047314 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004A3B8 00047318 40 81 00 28 */ ble lbl_8004A3E0 /* 8004A3BC 0004731C A0 18 00 00 */ lhz r0, 0(r24) /* 8004A3C0 00047320 7E C3 B3 78 */ mr r3, r22 /* 8004A3C4 00047324 7F C4 F3 78 */ mr r4, r30 /* 8004A3C8 00047328 7F A5 EB 78 */ mr r5, r29 /* 8004A3CC 0004732C B0 01 00 08 */ sth r0, 8(r1) /* 8004A3D0 00047330 7F 27 CB 78 */ mr r7, r25 /* 8004A3D4 00047334 7F 48 D3 78 */ mr r8, r26 /* 8004A3D8 00047338 38 C1 00 08 */ addi r6, r1, 8 /* 8004A3DC 0004733C 4B FF EC 35 */ bl ProcessRadiusDamage__13CStateManagerFRC6CActorR6CActor9TUniqueIdRC11CDamageInfoRC15CMaterialFilter lbl_8004A3E0: /* 8004A3E0 00047340 7F E4 FB 78 */ mr r4, r31 /* 8004A3E4 00047344 38 61 00 2C */ addi r3, r1, 0x2c /* 8004A3E8 00047348 48 05 B8 29 */ bl "__ct__31TCastToPtr<17CWallCrawlerSwarm>FP7CEntity" /* 8004A3EC 0004734C 80 63 00 04 */ lwz r3, 4(r3) /* 8004A3F0 00047350 28 03 00 00 */ cmplwi r3, 0 /* 8004A3F4 00047354 41 82 00 4C */ beq lbl_8004A440 /* 8004A3F8 00047358 28 1E 00 00 */ cmplwi r30, 0 /* 8004A3FC 0004735C 41 82 00 44 */ beq lbl_8004A440 /* 8004A400 00047360 C0 5E 00 40 */ lfs f2, 0x40(r30) /* 8004A404 00047364 7F 25 CB 78 */ mr r5, r25 /* 8004A408 00047368 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 8004A40C 0004736C 7E C6 B3 78 */ mr r6, r22 /* 8004A410 00047370 C0 1E 00 60 */ lfs f0, 0x60(r30) /* 8004A414 00047374 38 81 00 48 */ addi r4, r1, 0x48 /* 8004A418 00047378 D0 41 00 3C */ stfs f2, 0x3c(r1) /* 8004A41C 0004737C D0 21 00 40 */ stfs f1, 0x40(r1) /* 8004A420 00047380 81 01 00 3C */ lwz r8, 0x3c(r1) /* 8004A424 00047384 D0 01 00 44 */ stfs f0, 0x44(r1) /* 8004A428 00047388 80 E1 00 40 */ lwz r7, 0x40(r1) /* 8004A42C 0004738C 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004A430 00047390 91 01 00 48 */ stw r8, 0x48(r1) /* 8004A434 00047394 90 E1 00 4C */ stw r7, 0x4c(r1) /* 8004A438 00047398 90 01 00 50 */ stw r0, 0x50(r1) /* 8004A43C 0004739C 48 19 E4 35 */ bl ApplyRadiusDamage__17CWallCrawlerSwarmF9CVector3ffR13CStateManager lbl_8004A440: /* 8004A440 000473A0 BA A1 00 94 */ lmw r21, 0x94(r1) /* 8004A444 000473A4 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 8004A448 000473A8 7C 08 03 A6 */ mtlr r0 /* 8004A44C 000473AC 38 21 00 C0 */ addi r1, r1, 0xc0 /* 8004A450 000473B0 4E 80 00 20 */ blr .global UpdateAreaSounds__13CStateManagerFv UpdateAreaSounds__13CStateManagerFv: /* 8004A454 000473B4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004A458 000473B8 7C 08 02 A6 */ mflr r0 /* 8004A45C 000473BC 38 80 00 00 */ li r4, 0 /* 8004A460 000473C0 90 01 00 44 */ stw r0, 0x44(r1) /* 8004A464 000473C4 2C 04 00 00 */ cmpwi r4, 0 /* 8004A468 000473C8 7C 85 23 78 */ mr r5, r4 /* 8004A46C 000473CC 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8004A470 000473D0 3B E1 00 10 */ addi r31, r1, 0x10 /* 8004A474 000473D4 93 C1 00 38 */ stw r30, 0x38(r1) /* 8004A478 000473D8 90 81 00 0C */ stw r4, 0xc(r1) /* 8004A47C 000473DC 40 81 00 40 */ ble lbl_8004A4BC /* 8004A480 000473E0 2C 04 00 08 */ cmpwi r4, 8 /* 8004A484 000473E4 38 C0 FF F8 */ li r6, -8 /* 8004A488 000473E8 40 81 00 20 */ ble lbl_8004A4A8 /* 8004A48C 000473EC 38 00 FF FF */ li r0, -1 /* 8004A490 000473F0 54 00 E8 FE */ srwi r0, r0, 3 /* 8004A494 000473F4 7C 09 03 A6 */ mtctr r0 /* 8004A498 000473F8 2C 06 00 00 */ cmpwi r6, 0 /* 8004A49C 000473FC 40 81 00 0C */ ble lbl_8004A4A8 lbl_8004A4A0: /* 8004A4A0 00047400 38 A5 00 08 */ addi r5, r5, 8 /* 8004A4A4 00047404 42 00 FF FC */ bdnz lbl_8004A4A0 lbl_8004A4A8: /* 8004A4A8 00047408 7C 05 00 D0 */ neg r0, r5 /* 8004A4AC 0004740C 7C 09 03 A6 */ mtctr r0 /* 8004A4B0 00047410 7C 05 20 00 */ cmpw r5, r4 /* 8004A4B4 00047414 40 80 00 08 */ bge lbl_8004A4BC lbl_8004A4B8: /* 8004A4B8 00047418 42 00 00 00 */ bdnz lbl_8004A4B8 lbl_8004A4BC: /* 8004A4BC 0004741C 38 00 00 00 */ li r0, 0 /* 8004A4C0 00047420 90 01 00 0C */ stw r0, 0xc(r1) /* 8004A4C4 00047424 80 63 08 50 */ lwz r3, 0x850(r3) /* 8004A4C8 00047428 83 C3 00 58 */ lwz r30, 0x58(r3) /* 8004A4CC 0004742C 48 00 00 50 */ b lbl_8004A51C lbl_8004A4D0: /* 8004A4D0 00047430 88 1E 00 F0 */ lbz r0, 0xf0(r30) /* 8004A4D4 00047434 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004A4D8 00047438 41 82 00 10 */ beq lbl_8004A4E8 /* 8004A4DC 0004743C 80 7E 01 2C */ lwz r3, 0x12c(r30) /* 8004A4E0 00047440 80 03 10 DC */ lwz r0, 0x10dc(r3) /* 8004A4E4 00047444 48 00 00 08 */ b lbl_8004A4EC lbl_8004A4E8: /* 8004A4E8 00047448 38 00 00 00 */ li r0, 0 lbl_8004A4EC: /* 8004A4EC 0004744C 2C 00 00 01 */ cmpwi r0, 1 /* 8004A4F0 00047450 40 82 00 28 */ bne lbl_8004A518 /* 8004A4F4 00047454 80 01 00 0C */ lwz r0, 0xc(r1) /* 8004A4F8 00047458 80 9E 00 04 */ lwz r4, 4(r30) /* 8004A4FC 0004745C 54 00 10 3A */ slwi r0, r0, 2 /* 8004A500 00047460 7C 7F 02 15 */ add. r3, r31, r0 /* 8004A504 00047464 41 82 00 08 */ beq lbl_8004A50C /* 8004A508 00047468 90 83 00 00 */ stw r4, 0(r3) lbl_8004A50C: /* 8004A50C 0004746C 80 61 00 0C */ lwz r3, 0xc(r1) /* 8004A510 00047470 38 03 00 01 */ addi r0, r3, 1 /* 8004A514 00047474 90 01 00 0C */ stw r0, 0xc(r1) lbl_8004A518: /* 8004A518 00047478 83 DE 01 30 */ lwz r30, 0x130(r30) lbl_8004A51C: /* 8004A51C 0004747C 38 61 00 08 */ addi r3, r1, 8 /* 8004A520 00047480 4B FF C7 ED */ bl GetAliveAreasEnd__6CWorldFv /* 8004A524 00047484 80 01 00 08 */ lwz r0, 8(r1) /* 8004A528 00047488 7C 1E 00 40 */ cmplw r30, r0 /* 8004A52C 0004748C 40 82 FF A4 */ bne lbl_8004A4D0 /* 8004A530 00047490 38 61 00 0C */ addi r3, r1, 0xc /* 8004A534 00047494 48 29 E3 6D */ bl "SetActiveAreas__11CSfxManagerFRCQ24rstl21reserved_vector" /* 8004A538 00047498 80 A1 00 0C */ lwz r5, 0xc(r1) /* 8004A53C 0004749C 38 60 00 00 */ li r3, 0 /* 8004A540 000474A0 2C 05 00 00 */ cmpwi r5, 0 /* 8004A544 000474A4 40 81 00 40 */ ble lbl_8004A584 /* 8004A548 000474A8 2C 05 00 08 */ cmpwi r5, 8 /* 8004A54C 000474AC 38 85 FF F8 */ addi r4, r5, -8 /* 8004A550 000474B0 40 81 00 20 */ ble lbl_8004A570 /* 8004A554 000474B4 38 04 00 07 */ addi r0, r4, 7 /* 8004A558 000474B8 54 00 E8 FE */ srwi r0, r0, 3 /* 8004A55C 000474BC 7C 09 03 A6 */ mtctr r0 /* 8004A560 000474C0 2C 04 00 00 */ cmpwi r4, 0 /* 8004A564 000474C4 40 81 00 0C */ ble lbl_8004A570 lbl_8004A568: /* 8004A568 000474C8 38 63 00 08 */ addi r3, r3, 8 /* 8004A56C 000474CC 42 00 FF FC */ bdnz lbl_8004A568 lbl_8004A570: /* 8004A570 000474D0 7C 03 28 50 */ subf r0, r3, r5 /* 8004A574 000474D4 7C 09 03 A6 */ mtctr r0 /* 8004A578 000474D8 7C 03 28 00 */ cmpw r3, r5 /* 8004A57C 000474DC 40 80 00 08 */ bge lbl_8004A584 lbl_8004A580: /* 8004A580 000474E0 42 00 00 00 */ bdnz lbl_8004A580 lbl_8004A584: /* 8004A584 000474E4 38 00 00 00 */ li r0, 0 /* 8004A588 000474E8 90 01 00 0C */ stw r0, 0xc(r1) /* 8004A58C 000474EC 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004A590 000474F0 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8004A594 000474F4 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8004A598 000474F8 7C 08 03 A6 */ mtlr r0 /* 8004A59C 000474FC 38 21 00 40 */ addi r1, r1, 0x40 /* 8004A5A0 00047500 4E 80 00 20 */ blr .global FrameEnd__13CStateManagerFv FrameEnd__13CStateManagerFv: /* 8004A5A4 00047504 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A5A8 00047508 7C 08 02 A6 */ mflr r0 /* 8004A5AC 0004750C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A5B0 00047510 48 30 AD DD */ bl FrameDone__6CModelFv /* 8004A5B4 00047514 80 6D A0 64 */ lwz r3, gpSimplePool@sda21(r13) /* 8004A5B8 00047518 81 83 00 00 */ lwz r12, 0(r3) /* 8004A5BC 0004751C 81 8C 00 24 */ lwz r12, 0x24(r12) /* 8004A5C0 00047520 7D 89 03 A6 */ mtctr r12 /* 8004A5C4 00047524 4E 80 04 21 */ bctrl /* 8004A5C8 00047528 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A5CC 0004752C 7C 08 03 A6 */ mtlr r0 /* 8004A5D0 00047530 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A5D4 00047534 4E 80 00 20 */ blr .global ProcessPlayerInput__13CStateManagerFv ProcessPlayerInput__13CStateManagerFv: /* 8004A5D8 00047538 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A5DC 0004753C 7C 08 02 A6 */ mflr r0 /* 8004A5E0 00047540 7C 65 1B 78 */ mr r5, r3 /* 8004A5E4 00047544 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A5E8 00047548 80 63 08 4C */ lwz r3, 0x84c(r3) /* 8004A5EC 0004754C 28 03 00 00 */ cmplwi r3, 0 /* 8004A5F0 00047550 41 82 00 0C */ beq lbl_8004A5FC /* 8004A5F4 00047554 38 85 0B 54 */ addi r4, r5, 0xb54 /* 8004A5F8 00047558 4B FC A7 65 */ bl ProcessInput__7CPlayerFRC11CFinalInputR13CStateManager lbl_8004A5FC: /* 8004A5FC 0004755C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A600 00047560 7C 08 03 A6 */ mtlr r0 /* 8004A604 00047564 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A608 00047568 4E 80 00 20 */ blr .global ProcessInput__13CStateManagerFRC11CFinalInput ProcessInput__13CStateManagerFRC11CFinalInput: /* 8004A60C 0004756C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A610 00047570 7C 08 02 A6 */ mflr r0 /* 8004A614 00047574 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A618 00047578 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A61C 0004757C 7C 9F 23 78 */ mr r31, r4 /* 8004A620 00047580 93 C1 00 08 */ stw r30, 8(r1) /* 8004A624 00047584 7C 7E 1B 78 */ mr r30, r3 /* 8004A628 00047588 88 0D A1 E0 */ lbz r0, lbl_805A8DA0@sda21(r13) /* 8004A62C 0004758C 7C 00 07 75 */ extsb. r0, r0 /* 8004A630 00047590 40 82 00 18 */ bne lbl_8004A648 /* 8004A634 00047594 3C 60 80 46 */ lis r3, lbl_8045C550@ha /* 8004A638 00047598 38 63 C5 50 */ addi r3, r3, lbl_8045C550@l /* 8004A63C 0004759C 48 2F F7 E5 */ bl __ct__11CFinalInputFv /* 8004A640 000475A0 38 00 00 01 */ li r0, 1 /* 8004A644 000475A4 98 0D A1 E0 */ stb r0, lbl_805A8DA0@sda21(r13) lbl_8004A648: /* 8004A648 000475A8 80 1F 00 04 */ lwz r0, 4(r31) /* 8004A64C 000475AC 2C 00 00 00 */ cmpwi r0, 0 /* 8004A650 000475B0 40 82 01 54 */ bne lbl_8004A7A4 /* 8004A654 000475B4 80 7E 08 70 */ lwz r3, 0x870(r30) /* 8004A658 000475B8 7F C4 F3 78 */ mr r4, r30 /* 8004A65C 000475BC 4B FC 14 BD */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 8004A660 000475C0 80 9E 08 4C */ lwz r4, 0x84c(r30) /* 8004A664 000475C4 88 63 01 70 */ lbz r3, 0x170(r3) /* 8004A668 000475C8 88 04 09 C6 */ lbz r0, 0x9c6(r4) /* 8004A66C 000475CC 54 63 D7 FE */ rlwinm r3, r3, 0x1a, 0x1f, 0x1f /* 8004A670 000475D0 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 8004A674 000475D4 41 82 00 08 */ beq lbl_8004A67C /* 8004A678 000475D8 38 60 00 01 */ li r3, 1 lbl_8004A67C: /* 8004A67C 000475DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004A680 000475E0 41 82 00 9C */ beq lbl_8004A71C /* 8004A684 000475E4 3C 60 80 46 */ lis r3, lbl_8045C550@ha /* 8004A688 000475E8 C4 03 C5 50 */ lfsu f0, lbl_8045C550@l(r3) /* 8004A68C 000475EC D0 1E 0B 54 */ stfs f0, 0xb54(r30) /* 8004A690 000475F0 80 03 00 04 */ lwz r0, 4(r3) /* 8004A694 000475F4 90 1E 0B 58 */ stw r0, 0xb58(r30) /* 8004A698 000475F8 C0 03 00 08 */ lfs f0, 8(r3) /* 8004A69C 000475FC D0 1E 0B 5C */ stfs f0, 0xb5c(r30) /* 8004A6A0 00047600 C0 03 00 0C */ lfs f0, 0xc(r3) /* 8004A6A4 00047604 D0 1E 0B 60 */ stfs f0, 0xb60(r30) /* 8004A6A8 00047608 C0 03 00 10 */ lfs f0, 0x10(r3) /* 8004A6AC 0004760C D0 1E 0B 64 */ stfs f0, 0xb64(r30) /* 8004A6B0 00047610 C0 03 00 14 */ lfs f0, 0x14(r3) /* 8004A6B4 00047614 D0 1E 0B 68 */ stfs f0, 0xb68(r30) /* 8004A6B8 00047618 C0 03 00 18 */ lfs f0, 0x18(r3) /* 8004A6BC 0004761C D0 1E 0B 6C */ stfs f0, 0xb6c(r30) /* 8004A6C0 00047620 C0 03 00 1C */ lfs f0, 0x1c(r3) /* 8004A6C4 00047624 D0 1E 0B 70 */ stfs f0, 0xb70(r30) /* 8004A6C8 00047628 88 03 00 20 */ lbz r0, 0x20(r3) /* 8004A6CC 0004762C 98 1E 0B 74 */ stb r0, 0xb74(r30) /* 8004A6D0 00047630 88 03 00 21 */ lbz r0, 0x21(r3) /* 8004A6D4 00047634 98 1E 0B 75 */ stb r0, 0xb75(r30) /* 8004A6D8 00047638 88 03 00 22 */ lbz r0, 0x22(r3) /* 8004A6DC 0004763C 98 1E 0B 76 */ stb r0, 0xb76(r30) /* 8004A6E0 00047640 88 03 00 23 */ lbz r0, 0x23(r3) /* 8004A6E4 00047644 98 1E 0B 77 */ stb r0, 0xb77(r30) /* 8004A6E8 00047648 C0 03 00 24 */ lfs f0, 0x24(r3) /* 8004A6EC 0004764C D0 1E 0B 78 */ stfs f0, 0xb78(r30) /* 8004A6F0 00047650 C0 03 00 28 */ lfs f0, 0x28(r3) /* 8004A6F4 00047654 D0 1E 0B 7C */ stfs f0, 0xb7c(r30) /* 8004A6F8 00047658 88 03 00 2C */ lbz r0, 0x2c(r3) /* 8004A6FC 0004765C 98 1E 0B 80 */ stb r0, 0xb80(r30) /* 8004A700 00047660 88 03 00 2D */ lbz r0, 0x2d(r3) /* 8004A704 00047664 98 1E 0B 81 */ stb r0, 0xb81(r30) /* 8004A708 00047668 88 03 00 2E */ lbz r0, 0x2e(r3) /* 8004A70C 0004766C 98 1E 0B 82 */ stb r0, 0xb82(r30) /* 8004A710 00047670 C0 1F 00 00 */ lfs f0, 0(r31) /* 8004A714 00047674 D0 1E 0B 54 */ stfs f0, 0xb54(r30) /* 8004A718 00047678 48 00 00 8C */ b lbl_8004A7A4 lbl_8004A71C: /* 8004A71C 0004767C C0 1F 00 00 */ lfs f0, 0(r31) /* 8004A720 00047680 D0 1E 0B 54 */ stfs f0, 0xb54(r30) /* 8004A724 00047684 80 1F 00 04 */ lwz r0, 4(r31) /* 8004A728 00047688 90 1E 0B 58 */ stw r0, 0xb58(r30) /* 8004A72C 0004768C C0 1F 00 08 */ lfs f0, 8(r31) /* 8004A730 00047690 D0 1E 0B 5C */ stfs f0, 0xb5c(r30) /* 8004A734 00047694 C0 1F 00 0C */ lfs f0, 0xc(r31) /* 8004A738 00047698 D0 1E 0B 60 */ stfs f0, 0xb60(r30) /* 8004A73C 0004769C C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8004A740 000476A0 D0 1E 0B 64 */ stfs f0, 0xb64(r30) /* 8004A744 000476A4 C0 1F 00 14 */ lfs f0, 0x14(r31) /* 8004A748 000476A8 D0 1E 0B 68 */ stfs f0, 0xb68(r30) /* 8004A74C 000476AC C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8004A750 000476B0 D0 1E 0B 6C */ stfs f0, 0xb6c(r30) /* 8004A754 000476B4 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8004A758 000476B8 D0 1E 0B 70 */ stfs f0, 0xb70(r30) /* 8004A75C 000476BC 88 1F 00 20 */ lbz r0, 0x20(r31) /* 8004A760 000476C0 98 1E 0B 74 */ stb r0, 0xb74(r30) /* 8004A764 000476C4 88 1F 00 21 */ lbz r0, 0x21(r31) /* 8004A768 000476C8 98 1E 0B 75 */ stb r0, 0xb75(r30) /* 8004A76C 000476CC 88 1F 00 22 */ lbz r0, 0x22(r31) /* 8004A770 000476D0 98 1E 0B 76 */ stb r0, 0xb76(r30) /* 8004A774 000476D4 88 1F 00 23 */ lbz r0, 0x23(r31) /* 8004A778 000476D8 98 1E 0B 77 */ stb r0, 0xb77(r30) /* 8004A77C 000476DC C0 1F 00 24 */ lfs f0, 0x24(r31) /* 8004A780 000476E0 D0 1E 0B 78 */ stfs f0, 0xb78(r30) /* 8004A784 000476E4 C0 1F 00 28 */ lfs f0, 0x28(r31) /* 8004A788 000476E8 D0 1E 0B 7C */ stfs f0, 0xb7c(r30) /* 8004A78C 000476EC 88 1F 00 2C */ lbz r0, 0x2c(r31) /* 8004A790 000476F0 98 1E 0B 80 */ stb r0, 0xb80(r30) /* 8004A794 000476F4 88 1F 00 2D */ lbz r0, 0x2d(r31) /* 8004A798 000476F8 98 1E 0B 81 */ stb r0, 0xb81(r30) /* 8004A79C 000476FC 88 1F 00 2E */ lbz r0, 0x2e(r31) /* 8004A7A0 00047700 98 1E 0B 82 */ stb r0, 0xb82(r30) lbl_8004A7A4: /* 8004A7A4 00047704 80 7E 08 70 */ lwz r3, 0x870(r30) /* 8004A7A8 00047708 7F E4 FB 78 */ mr r4, r31 /* 8004A7AC 0004770C 7F C5 F3 78 */ mr r5, r30 /* 8004A7B0 00047710 4B FC 0C BD */ bl ProcessInput__14CCameraManagerFRC11CFinalInputR13CStateManager /* 8004A7B4 00047714 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A7B8 00047718 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A7BC 0004771C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004A7C0 00047720 7C 08 03 A6 */ mtlr r0 /* 8004A7C4 00047724 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A7C8 00047728 4E 80 00 20 */ blr .global Update__13CStateManagerFf Update__13CStateManagerFf: /* 8004A7CC 0004772C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004A7D0 00047730 7C 08 02 A6 */ mflr r0 /* 8004A7D4 00047734 90 01 00 44 */ stw r0, 0x44(r1) /* 8004A7D8 00047738 DB E1 00 30 */ stfd f31, 0x30(r1) /* 8004A7DC 0004773C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8004A7E0 00047740 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 8004A7E4 00047744 80 03 08 D8 */ lwz r0, 0x8d8(r3) /* 8004A7E8 00047748 FF E0 08 90 */ fmr f31, f1 /* 8004A7EC 0004774C 7C 7E 1B 78 */ mr r30, r3 /* 8004A7F0 00047750 B0 0D 9C F8 */ sth r0, lbl_805A88B8@sda21(r13) /* 8004A7F4 00047754 80 03 08 D8 */ lwz r0, 0x8d8(r3) /* 8004A7F8 00047758 B0 0D 9E 50 */ sth r0, lbl_805A8A10@sda21(r13) /* 8004A7FC 0004775C 80 03 08 D8 */ lwz r0, 0x8d8(r3) /* 8004A800 00047760 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 8004A804 00047764 48 26 B0 49 */ bl SetGlobalSeed__6CDecalFUs /* 8004A808 00047768 80 7E 08 D8 */ lwz r3, 0x8d8(r30) /* 8004A80C 0004776C 48 26 48 FD */ bl SetGlobalSeed__17CProjectileWeaponFUs /* 8004A810 00047770 C0 3E 0F 14 */ lfs f1, 0xf14(r30) /* 8004A814 00047774 C0 02 86 18 */ lfs f0, lbl_805AA338@sda21(r2) /* 8004A818 00047778 EC 21 F8 2A */ fadds f1, f1, f31 /* 8004A81C 0004777C D0 3E 0F 14 */ stfs f1, 0xf14(r30) /* 8004A820 00047780 C0 3E 0F 14 */ lfs f1, 0xf14(r30) /* 8004A824 00047784 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004A828 00047788 40 81 00 0C */ ble lbl_8004A834 /* 8004A82C 0004778C EC 01 00 28 */ fsubs f0, f1, f0 /* 8004A830 00047790 D0 1E 0F 14 */ stfs f0, 0xf14(r30) lbl_8004A834: /* 8004A834 00047794 38 00 FF FF */ li r0, -1 /* 8004A838 00047798 90 1E 0F 08 */ stw r0, 0xf08(r30) /* 8004A83C 0004779C 48 04 37 6D */ bl ResetParticleCounts__13CScriptEffectFv /* 8004A840 000477A0 7F C3 F3 78 */ mr r3, r30 /* 8004A844 000477A4 4B FF 9D 25 */ bl UpdateThermalVisor__13CStateManagerFv /* 8004A848 000477A8 7F C3 F3 78 */ mr r3, r30 /* 8004A84C 000477AC 48 00 0C B9 */ bl nullsub_34 /* 8004A850 000477B0 7F C3 F3 78 */ mr r3, r30 /* 8004A854 000477B4 48 00 0C B5 */ bl UpdateGameState__13CStateManagerFv /* 8004A858 000477B8 80 7E 08 4C */ lwz r3, 0x84c(r30) /* 8004A85C 000477BC C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004A860 000477C0 C0 23 09 F4 */ lfs f1, 0x9f4(r3) /* 8004A864 000477C4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004A868 000477C8 7C 60 00 26 */ mfcr r3 /* 8004A86C 000477CC 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004A870 000477D0 54 7F 17 FE */ rlwinm r31, r3, 2, 0x1f, 0x1f /* 8004A874 000477D4 2C 00 00 00 */ cmpwi r0, 0 /* 8004A878 000477D8 40 82 00 7C */ bne lbl_8004A8F4 /* 8004A87C 000477DC 80 7E 08 70 */ lwz r3, 0x870(r30) /* 8004A880 000477E0 7F C4 F3 78 */ mr r4, r30 /* 8004A884 000477E4 4B FC 12 95 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 8004A888 000477E8 7C 64 1B 78 */ mr r4, r3 /* 8004A88C 000477EC 38 61 00 10 */ addi r3, r1, 0x10 /* 8004A890 000477F0 48 06 4E A1 */ bl "__ct__30TCastToPtr<16CCinematicCamera>FR7CEntity" /* 8004A894 000477F4 80 03 00 04 */ lwz r0, 4(r3) /* 8004A898 000477F8 28 00 00 00 */ cmplwi r0, 0 /* 8004A89C 000477FC 40 82 00 20 */ bne lbl_8004A8BC /* 8004A8A0 00047800 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 8004A8A4 00047804 C8 03 00 A0 */ lfd f0, 0xa0(r3) /* 8004A8A8 00047808 FC 3F 00 2A */ fadd f1, f31, f0 /* 8004A8AC 0004780C 48 18 90 29 */ bl SetTotalPlayTime__10CGameStateFd /* 8004A8B0 00047810 FC 20 F8 90 */ fmr f1, f31 /* 8004A8B4 00047814 7F C3 F3 78 */ mr r3, r30 /* 8004A8B8 00047818 4B FF A4 81 */ bl UpdateHintState__13CStateManagerFf lbl_8004A8BC: /* 8004A8BC 0004781C 3B BE 0B 88 */ addi r29, r30, 0xb88 /* 8004A8C0 00047820 3B 9E 0D 18 */ addi r28, r30, 0xd18 /* 8004A8C4 00047824 3B 60 00 00 */ li r27, 0 lbl_8004A8C8: /* 8004A8C8 00047828 FC 20 F8 90 */ fmr f1, f31 /* 8004A8CC 0004782C 7F A3 EB 78 */ mr r3, r29 /* 8004A8D0 00047830 48 0A 29 4D */ bl Update__17CCameraFilterPassFf /* 8004A8D4 00047834 FC 20 F8 90 */ fmr f1, f31 /* 8004A8D8 00047838 7F 83 E3 78 */ mr r3, r28 /* 8004A8DC 0004783C 48 0A 14 FD */ bl Update__15CCameraBlurPassFf /* 8004A8E0 00047840 3B 7B 00 01 */ addi r27, r27, 1 /* 8004A8E4 00047844 3B 9C 00 34 */ addi r28, r28, 0x34 /* 8004A8E8 00047848 2C 1B 00 09 */ cmpwi r27, 9 /* 8004A8EC 0004784C 3B BD 00 2C */ addi r29, r29, 0x2c /* 8004A8F0 00047850 41 80 FF D8 */ blt lbl_8004A8C8 lbl_8004A8F4: /* 8004A8F4 00047854 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004A8F8 00047858 2C 00 00 02 */ cmpwi r0, 2 /* 8004A8FC 0004785C 41 82 00 1C */ beq lbl_8004A918 /* 8004A900 00047860 FC 20 F8 90 */ fmr f1, f31 /* 8004A904 00047864 7F C3 F3 78 */ mr r3, r30 /* 8004A908 00047868 48 00 02 E9 */ bl PreThinkObjects__13CStateManagerFf /* 8004A90C 0004786C FC 20 F8 90 */ fmr f1, f31 /* 8004A910 00047870 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 8004A914 00047874 48 0E 4D 21 */ bl Update__18CFluidPlaneManagerFf lbl_8004A918: /* 8004A918 00047878 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004A91C 0004787C 2C 00 00 00 */ cmpwi r0, 0 /* 8004A920 00047880 40 82 00 84 */ bne lbl_8004A9A4 /* 8004A924 00047884 28 1F 00 00 */ cmplwi r31, 0 /* 8004A928 00047888 40 82 00 10 */ bne lbl_8004A938 /* 8004A92C 0004788C FC 20 F8 90 */ fmr f1, f31 /* 8004A930 00047890 7F C3 F3 78 */ mr r3, r30 /* 8004A934 00047894 48 0C C6 85 */ bl Update__13CDecalManagerFfR13CStateManager lbl_8004A938: /* 8004A938 00047898 7F C3 F3 78 */ mr r3, r30 /* 8004A93C 0004789C 48 00 1F 55 */ bl UpdateSortedLists__13CStateManagerFv /* 8004A940 000478A0 28 1F 00 00 */ cmplwi r31, 0 /* 8004A944 000478A4 40 82 00 1C */ bne lbl_8004A960 /* 8004A948 000478A8 FC 20 F8 90 */ fmr f1, f31 /* 8004A94C 000478AC 7F C3 F3 78 */ mr r3, r30 /* 8004A950 000478B0 48 00 0A DD */ bl MovePlatforms__13CStateManagerFf /* 8004A954 000478B4 FC 20 F8 90 */ fmr f1, f31 /* 8004A958 000478B8 7F C3 F3 78 */ mr r3, r30 /* 8004A95C 000478BC 48 00 09 31 */ bl MoveDoors__13CStateManagerFf lbl_8004A960: /* 8004A960 000478C0 7F C3 F3 78 */ mr r3, r30 /* 8004A964 000478C4 4B FF FC 75 */ bl ProcessPlayerInput__13CStateManagerFv /* 8004A968 000478C8 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004A96C 000478CC 2C 00 00 01 */ cmpwi r0, 1 /* 8004A970 000478D0 41 82 00 18 */ beq lbl_8004A988 /* 8004A974 000478D4 FC 20 F8 90 */ fmr f1, f31 /* 8004A978 000478D8 80 9E 08 4C */ lwz r4, 0x84c(r30) /* 8004A97C 000478DC 7F C3 F3 78 */ mr r3, r30 /* 8004A980 000478E0 38 A0 00 00 */ li r5, 0 /* 8004A984 000478E4 48 13 73 B5 */ bl "Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" lbl_8004A988: /* 8004A988 000478E8 7F C3 F3 78 */ mr r3, r30 /* 8004A98C 000478EC 48 00 1F 05 */ bl UpdateSortedLists__13CStateManagerFv /* 8004A990 000478F0 28 1F 00 00 */ cmplwi r31, 0 /* 8004A994 000478F4 40 82 00 18 */ bne lbl_8004A9AC /* 8004A998 000478F8 7F C3 F3 78 */ mr r3, r30 /* 8004A99C 000478FC 48 00 05 95 */ bl CrossTouchActors__13CStateManagerFf /* 8004A9A0 00047900 48 00 00 0C */ b lbl_8004A9AC lbl_8004A9A4: /* 8004A9A4 00047904 7F C3 F3 78 */ mr r3, r30 /* 8004A9A8 00047908 4B FF FC 31 */ bl ProcessPlayerInput__13CStateManagerFv lbl_8004A9AC: /* 8004A9AC 0004790C 28 1F 00 00 */ cmplwi r31, 0 /* 8004A9B0 00047910 40 82 00 20 */ bne lbl_8004A9D0 /* 8004A9B4 00047914 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004A9B8 00047918 2C 00 00 00 */ cmpwi r0, 0 /* 8004A9BC 0004791C 40 82 00 14 */ bne lbl_8004A9D0 /* 8004A9C0 00047920 FC 20 F8 90 */ fmr f1, f31 /* 8004A9C4 00047924 80 7E 08 84 */ lwz r3, 0x884(r30) /* 8004A9C8 00047928 7F C4 F3 78 */ mr r4, r30 /* 8004A9CC 0004792C 48 19 AC 81 */ bl Update__20CActorModelParticlesFfR13CStateManager lbl_8004A9D0: /* 8004A9D0 00047930 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004A9D4 00047934 2C 00 00 00 */ cmpwi r0, 0 /* 8004A9D8 00047938 41 82 00 0C */ beq lbl_8004A9E4 /* 8004A9DC 0004793C 2C 00 00 01 */ cmpwi r0, 1 /* 8004A9E0 00047940 40 82 00 10 */ bne lbl_8004A9F0 lbl_8004A9E4: /* 8004A9E4 00047944 FC 20 F8 90 */ fmr f1, f31 /* 8004A9E8 00047948 7F C3 F3 78 */ mr r3, r30 /* 8004A9EC 0004794C 48 00 03 5D */ bl Think__13CStateManagerFf lbl_8004A9F0: /* 8004A9F0 00047950 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004A9F4 00047954 2C 00 00 01 */ cmpwi r0, 1 /* 8004A9F8 00047958 41 82 00 58 */ beq lbl_8004AA50 /* 8004A9FC 0004795C FC 20 F8 90 */ fmr f1, f31 /* 8004AA00 00047960 80 7E 08 70 */ lwz r3, 0x870(r30) /* 8004AA04 00047964 7F C4 F3 78 */ mr r4, r30 /* 8004AA08 00047968 4B FC 0B 45 */ bl Update__14CCameraManagerFfR13CStateManager /* 8004AA0C 0004796C 48 00 00 44 */ b lbl_8004AA50 lbl_8004AA10: /* 8004AA10 00047970 A0 1E 0F 76 */ lhz r0, 0xf76(r30) /* 8004AA14 00047974 7F C3 F3 78 */ mr r3, r30 /* 8004AA18 00047978 38 81 00 08 */ addi r4, r1, 8 /* 8004AA1C 0004797C B0 01 00 08 */ sth r0, 8(r1) /* 8004AA20 00047980 48 00 1B 55 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8004AA24 00047984 28 03 00 00 */ cmplwi r3, 0 /* 8004AA28 00047988 40 82 00 10 */ bne lbl_8004AA38 /* 8004AA2C 0004798C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004AA30 00047990 B0 1E 0F 76 */ sth r0, 0xf76(r30) /* 8004AA34 00047994 48 00 00 2C */ b lbl_8004AA60 lbl_8004AA38: /* 8004AA38 00047998 81 83 00 00 */ lwz r12, 0(r3) /* 8004AA3C 0004799C FC 20 F8 90 */ fmr f1, f31 /* 8004AA40 000479A0 7F C4 F3 78 */ mr r4, r30 /* 8004AA44 000479A4 81 8C 00 14 */ lwz r12, 0x14(r12) /* 8004AA48 000479A8 7D 89 03 A6 */ mtctr r12 /* 8004AA4C 000479AC 4E 80 04 21 */ bctrl lbl_8004AA50: /* 8004AA50 000479B0 A0 7E 0F 76 */ lhz r3, 0xf76(r30) /* 8004AA54 000479B4 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004AA58 000479B8 7C 03 00 40 */ cmplw r3, r0 /* 8004AA5C 000479BC 40 82 FF B4 */ bne lbl_8004AA10 lbl_8004AA60: /* 8004AA60 000479C0 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004AA64 000479C4 2C 00 00 02 */ cmpwi r0, 2 /* 8004AA68 000479C8 41 82 00 10 */ beq lbl_8004AA78 /* 8004AA6C 000479CC FC 20 F8 90 */ fmr f1, f31 /* 8004AA70 000479D0 7F C3 F3 78 */ mr r3, r30 /* 8004AA74 000479D4 48 00 01 55 */ bl PostUpdatePlayer__13CStateManagerFf lbl_8004AA78: /* 8004AA78 000479D8 80 7E 0F 84 */ lwz r3, 0xf84(r30) /* 8004AA7C 000479DC 80 1E 0F 80 */ lwz r0, 0xf80(r30) /* 8004AA80 000479E0 7C 03 00 40 */ cmplw r3, r0 /* 8004AA84 000479E4 40 82 00 28 */ bne lbl_8004AAAC /* 8004AA88 000479E8 80 9E 0F 88 */ lwz r4, 0xf88(r30) /* 8004AA8C 000479EC 7F C3 F3 78 */ mr r3, r30 /* 8004AA90 000479F0 C0 3E 0F 8C */ lfs f1, 0xf8c(r30) /* 8004AA94 000479F4 4B FF 9D A1 */ bl ShowPausedHUDMemo__13CStateManagerFUif /* 8004AA98 000479F8 80 7E 0F 84 */ lwz r3, 0xf84(r30) /* 8004AA9C 000479FC 38 00 FF FF */ li r0, -1 /* 8004AAA0 00047A00 38 63 FF FF */ addi r3, r3, -1 /* 8004AAA4 00047A04 90 7E 0F 84 */ stw r3, 0xf84(r30) /* 8004AAA8 00047A08 90 1E 0F 88 */ stw r0, 0xf88(r30) lbl_8004AAAC: /* 8004AAAC 00047A0C 28 1F 00 00 */ cmplwi r31, 0 /* 8004AAB0 00047A10 40 82 00 2C */ bne lbl_8004AADC /* 8004AAB4 00047A14 80 1E 09 04 */ lwz r0, 0x904(r30) /* 8004AAB8 00047A18 2C 00 00 00 */ cmpwi r0, 0 /* 8004AABC 00047A1C 40 82 00 20 */ bne lbl_8004AADC /* 8004AAC0 00047A20 80 7E 08 70 */ lwz r3, 0x870(r30) /* 8004AAC4 00047A24 4B FB FE 3D */ bl IsInCinematicCamera__14CCameraManagerCFv /* 8004AAC8 00047A28 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004AACC 00047A2C 40 82 00 10 */ bne lbl_8004AADC /* 8004AAD0 00047A30 FC 20 F8 90 */ fmr f1, f31 /* 8004AAD4 00047A34 7F C3 F3 78 */ mr r3, r30 /* 8004AAD8 00047A38 4B FF A4 1D */ bl UpdateEscapeSequenceTimer__13CStateManagerFf lbl_8004AADC: /* 8004AADC 00047A3C FC 20 F8 90 */ fmr f1, f31 /* 8004AAE0 00047A40 80 7E 08 50 */ lwz r3, 0x850(r30) /* 8004AAE4 00047A44 48 00 B8 51 */ bl Update__6CWorldFf /* 8004AAE8 00047A48 FC 20 F8 90 */ fmr f1, f31 /* 8004AAEC 00047A4C 80 7E 08 8C */ lwz r3, 0x88c(r30) /* 8004AAF0 00047A50 48 1E 36 05 */ bl Update__14CRumbleManagerFf /* 8004AAF4 00047A54 28 1F 00 00 */ cmplwi r31, 0 /* 8004AAF8 00047A58 40 82 00 14 */ bne lbl_8004AB0C /* 8004AAFC 00047A5C FC 20 F8 90 */ fmr f1, f31 /* 8004AB00 00047A60 80 7E 08 80 */ lwz r3, 0x880(r30) /* 8004AB04 00047A64 7F C4 F3 78 */ mr r4, r30 /* 8004AB08 00047A68 48 1C 75 BD */ bl Update__13CEnvFxManagerFfR13CStateManager lbl_8004AB0C: /* 8004AB0C 00047A6C 7F C3 F3 78 */ mr r3, r30 /* 8004AB10 00047A70 4B FF F9 45 */ bl UpdateAreaSounds__13CStateManagerFv /* 8004AB14 00047A74 88 1E 0F 94 */ lbz r0, 0xf94(r30) /* 8004AB18 00047A78 38 60 00 01 */ li r3, 1 /* 8004AB1C 00047A7C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 8004AB20 00047A80 98 1E 0F 94 */ stb r0, 0xf94(r30) /* 8004AB24 00047A84 88 1E 0F 94 */ lbz r0, 0xf94(r30) /* 8004AB28 00047A88 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 8004AB2C 00047A8C 41 82 00 40 */ beq lbl_8004AB6C /* 8004AB30 00047A90 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 8004AB34 00047A94 3B E3 01 F8 */ addi r31, r3, 0x1f8 /* 8004AB38 00047A98 7F E3 FB 78 */ mr r3, r31 /* 8004AB3C 00047A9C 48 21 CB E1 */ bl GetCurrentDisplayedHint__12CHintOptionsCFv /* 8004AB40 00047AA0 28 03 00 00 */ cmplwi r3, 0 /* 8004AB44 00047AA4 41 82 00 18 */ beq lbl_8004AB5C /* 8004AB48 00047AA8 48 21 D3 05 */ bl CanContinue__Q212CHintOptions10SHintStateFv /* 8004AB4C 00047AAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004AB50 00047AB0 41 82 00 0C */ beq lbl_8004AB5C /* 8004AB54 00047AB4 7F E3 FB 78 */ mr r3, r31 /* 8004AB58 00047AB8 48 21 CA C9 */ bl DismissDisplayedHint__12CHintOptionsFv lbl_8004AB5C: /* 8004AB5C 00047ABC 88 1E 0F 94 */ lbz r0, 0xf94(r30) /* 8004AB60 00047AC0 38 60 00 00 */ li r3, 0 /* 8004AB64 00047AC4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 8004AB68 00047AC8 98 1E 0F 94 */ stb r0, 0xf94(r30) lbl_8004AB6C: /* 8004AB6C 00047ACC 80 1E 08 CC */ lwz r0, 0x8cc(r30) /* 8004AB70 00047AD0 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 8004AB74 00047AD4 90 01 00 0C */ stw r0, 0xc(r1) /* 8004AB78 00047AD8 48 18 8E 35 */ bl CurrentWorldState__10CGameStateFv /* 8004AB7C 00047ADC 38 81 00 0C */ addi r4, r1, 0xc /* 8004AB80 00047AE0 48 18 A1 CD */ bl SetAreaId__11CWorldStateF7TAreaId /* 8004AB84 00047AE4 80 7E 08 50 */ lwz r3, 0x850(r30) /* 8004AB88 00047AE8 7F C5 F3 78 */ mr r5, r30 /* 8004AB8C 00047AEC 38 9E 08 CC */ addi r4, r30, 0x8cc /* 8004AB90 00047AF0 38 C0 00 00 */ li r6, 0 /* 8004AB94 00047AF4 48 00 D0 19 */ bl TravelToArea__6CWorldFRC7TAreaIdR13CStateManagerb /* 8004AB98 00047AF8 7F C3 F3 78 */ mr r3, r30 /* 8004AB9C 00047AFC 48 00 15 F9 */ bl BringOutYourDead__13CStateManagerFv /* 8004ABA0 00047B00 80 7E 08 D8 */ lwz r3, 0x8d8(r30) /* 8004ABA4 00047B04 38 03 00 01 */ addi r0, r3, 1 /* 8004ABA8 00047B08 90 1E 08 D8 */ stw r0, 0x8d8(r30) /* 8004ABAC 00047B0C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8004ABB0 00047B10 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8004ABB4 00047B14 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 8004ABB8 00047B18 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004ABBC 00047B1C 7C 08 03 A6 */ mtlr r0 /* 8004ABC0 00047B20 38 21 00 40 */ addi r1, r1, 0x40 /* 8004ABC4 00047B24 4E 80 00 20 */ blr .global PostUpdatePlayer__13CStateManagerFf PostUpdatePlayer__13CStateManagerFf: /* 8004ABC8 00047B28 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004ABCC 00047B2C 7C 08 02 A6 */ mflr r0 /* 8004ABD0 00047B30 7C 64 1B 78 */ mr r4, r3 /* 8004ABD4 00047B34 90 01 00 14 */ stw r0, 0x14(r1) /* 8004ABD8 00047B38 80 63 08 4C */ lwz r3, 0x84c(r3) /* 8004ABDC 00047B3C 4B FC 61 55 */ bl PostUpdate__7CPlayerFfR13CStateManager /* 8004ABE0 00047B40 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004ABE4 00047B44 7C 08 03 A6 */ mtlr r0 /* 8004ABE8 00047B48 38 21 00 10 */ addi r1, r1, 0x10 /* 8004ABEC 00047B4C 4E 80 00 20 */ blr .global PreThinkObjects__13CStateManagerFf PreThinkObjects__13CStateManagerFf: /* 8004ABF0 00047B50 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004ABF4 00047B54 7C 08 02 A6 */ mflr r0 /* 8004ABF8 00047B58 90 01 00 44 */ stw r0, 0x44(r1) /* 8004ABFC 00047B5C DB E1 00 30 */ stfd f31, 0x30(r1) /* 8004AC00 00047B60 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8004AC04 00047B64 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 8004AC08 00047B68 7C 7B 1B 78 */ mr r27, r3 /* 8004AC0C 00047B6C C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004AC10 00047B70 80 63 08 4C */ lwz r3, 0x84c(r3) /* 8004AC14 00047B74 FF E0 08 90 */ fmr f31, f1 /* 8004AC18 00047B78 C0 43 09 F4 */ lfs f2, 0x9f4(r3) /* 8004AC1C 00047B7C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004AC20 00047B80 40 81 00 10 */ ble lbl_8004AC30 /* 8004AC24 00047B84 7F 64 DB 78 */ mr r4, r27 /* 8004AC28 00047B88 4B FC 6D 59 */ bl DoPreThink__7CPlayerfRC13CStateManager /* 8004AC2C 00047B8C 48 00 01 00 */ b lbl_8004AD2C lbl_8004AC30: /* 8004AC30 00047B90 80 1B 09 04 */ lwz r0, 0x904(r27) /* 8004AC34 00047B94 83 FB 08 10 */ lwz r31, 0x810(r27) /* 8004AC38 00047B98 2C 00 00 01 */ cmpwi r0, 1 /* 8004AC3C 00047B9C 40 82 00 70 */ bne lbl_8004ACAC /* 8004AC40 00047BA0 AB DF 20 08 */ lha r30, 0x2008(r31) /* 8004AC44 00047BA4 48 00 00 5C */ b lbl_8004ACA0 lbl_8004AC48: /* 8004AC48 00047BA8 7F E3 FB 78 */ mr r3, r31 /* 8004AC4C 00047BAC 7F C4 F3 78 */ mr r4, r30 /* 8004AC50 00047BB0 4B FC 50 C5 */ bl __vc__11CObjectListFi /* 8004AC54 00047BB4 7C 64 1B 78 */ mr r4, r3 /* 8004AC58 00047BB8 38 61 00 10 */ addi r3, r1, 0x10 /* 8004AC5C 00047BBC 48 05 F1 81 */ bl "__ct__27TCastToPtr<13CScriptEffect>FP7CEntity" /* 8004AC60 00047BC0 80 63 00 04 */ lwz r3, 4(r3) /* 8004AC64 00047BC4 28 03 00 00 */ cmplwi r3, 0 /* 8004AC68 00047BC8 41 82 00 1C */ beq lbl_8004AC84 /* 8004AC6C 00047BCC 81 83 00 00 */ lwz r12, 0(r3) /* 8004AC70 00047BD0 FC 20 F8 90 */ fmr f1, f31 /* 8004AC74 00047BD4 7F 64 DB 78 */ mr r4, r27 /* 8004AC78 00047BD8 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004AC7C 00047BDC 7D 89 03 A6 */ mtctr r12 /* 8004AC80 00047BE0 4E 80 04 21 */ bctrl lbl_8004AC84: /* 8004AC84 00047BE4 2C 1E FF FF */ cmpwi r30, -1 /* 8004AC88 00047BE8 41 82 00 14 */ beq lbl_8004AC9C /* 8004AC8C 00047BEC 57 C3 18 38 */ slwi r3, r30, 3 /* 8004AC90 00047BF0 38 03 00 08 */ addi r0, r3, 8 /* 8004AC94 00047BF4 7F DF 02 AE */ lhax r30, r31, r0 /* 8004AC98 00047BF8 48 00 00 08 */ b lbl_8004ACA0 lbl_8004AC9C: /* 8004AC9C 00047BFC 3B C0 FF FF */ li r30, -1 lbl_8004ACA0: /* 8004ACA0 00047C00 2C 1E FF FF */ cmpwi r30, -1 /* 8004ACA4 00047C04 40 82 FF A4 */ bne lbl_8004AC48 /* 8004ACA8 00047C08 48 00 00 84 */ b lbl_8004AD2C lbl_8004ACAC: /* 8004ACAC 00047C0C 83 DB 08 28 */ lwz r30, 0x828(r27) /* 8004ACB0 00047C10 AB BF 20 08 */ lha r29, 0x2008(r31) /* 8004ACB4 00047C14 48 00 00 70 */ b lbl_8004AD24 lbl_8004ACB8: /* 8004ACB8 00047C18 7F E3 FB 78 */ mr r3, r31 /* 8004ACBC 00047C1C 7F A4 EB 78 */ mr r4, r29 /* 8004ACC0 00047C20 4B FC 50 55 */ bl __vc__11CObjectListFi /* 8004ACC4 00047C24 7C 7C 1B 79 */ or. r28, r3, r3 /* 8004ACC8 00047C28 41 82 00 40 */ beq lbl_8004AD08 /* 8004ACCC 00047C2C A0 1C 00 08 */ lhz r0, 8(r28) /* 8004ACD0 00047C30 7F C3 F3 78 */ mr r3, r30 /* 8004ACD4 00047C34 38 81 00 0C */ addi r4, r1, 0xc /* 8004ACD8 00047C38 B0 01 00 08 */ sth r0, 8(r1) /* 8004ACDC 00047C3C B0 01 00 0C */ sth r0, 0xc(r1) /* 8004ACE0 00047C40 4B FC 51 69 */ bl GetObjectById__11CObjectListF9TUniqueId /* 8004ACE4 00047C44 28 03 00 00 */ cmplwi r3, 0 /* 8004ACE8 00047C48 40 82 00 20 */ bne lbl_8004AD08 /* 8004ACEC 00047C4C 7F 83 E3 78 */ mr r3, r28 /* 8004ACF0 00047C50 FC 20 F8 90 */ fmr f1, f31 /* 8004ACF4 00047C54 81 9C 00 00 */ lwz r12, 0(r28) /* 8004ACF8 00047C58 7F 64 DB 78 */ mr r4, r27 /* 8004ACFC 00047C5C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004AD00 00047C60 7D 89 03 A6 */ mtctr r12 /* 8004AD04 00047C64 4E 80 04 21 */ bctrl lbl_8004AD08: /* 8004AD08 00047C68 2C 1D FF FF */ cmpwi r29, -1 /* 8004AD0C 00047C6C 41 82 00 14 */ beq lbl_8004AD20 /* 8004AD10 00047C70 57 A3 18 38 */ slwi r3, r29, 3 /* 8004AD14 00047C74 38 03 00 08 */ addi r0, r3, 8 /* 8004AD18 00047C78 7F BF 02 AE */ lhax r29, r31, r0 /* 8004AD1C 00047C7C 48 00 00 08 */ b lbl_8004AD24 lbl_8004AD20: /* 8004AD20 00047C80 3B A0 FF FF */ li r29, -1 lbl_8004AD24: /* 8004AD24 00047C84 2C 1D FF FF */ cmpwi r29, -1 /* 8004AD28 00047C88 40 82 FF 90 */ bne lbl_8004ACB8 lbl_8004AD2C: /* 8004AD2C 00047C8C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8004AD30 00047C90 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8004AD34 00047C94 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 8004AD38 00047C98 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004AD3C 00047C9C 7C 08 03 A6 */ mtlr r0 /* 8004AD40 00047CA0 38 21 00 40 */ addi r1, r1, 0x40 /* 8004AD44 00047CA4 4E 80 00 20 */ blr .global Think__13CStateManagerFf Think__13CStateManagerFf: /* 8004AD48 00047CA8 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8004AD4C 00047CAC 7C 08 02 A6 */ mflr r0 /* 8004AD50 00047CB0 90 01 00 54 */ stw r0, 0x54(r1) /* 8004AD54 00047CB4 DB E1 00 40 */ stfd f31, 0x40(r1) /* 8004AD58 00047CB8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 8004AD5C 00047CBC BF 61 00 2C */ stmw r27, 0x2c(r1) /* 8004AD60 00047CC0 7C 7B 1B 78 */ mr r27, r3 /* 8004AD64 00047CC4 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004AD68 00047CC8 80 63 08 4C */ lwz r3, 0x84c(r3) /* 8004AD6C 00047CCC FF E0 08 90 */ fmr f31, f1 /* 8004AD70 00047CD0 C0 43 09 F4 */ lfs f2, 0x9f4(r3) /* 8004AD74 00047CD4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004AD78 00047CD8 40 81 00 10 */ ble lbl_8004AD88 /* 8004AD7C 00047CDC 7F 64 DB 78 */ mr r4, r27 /* 8004AD80 00047CE0 4B FC 6C 85 */ bl DoThink__7CPlayerFfRC13CStateManager /* 8004AD84 00047CE4 48 00 01 90 */ b lbl_8004AF14 lbl_8004AD88: /* 8004AD88 00047CE8 80 1B 09 04 */ lwz r0, 0x904(r27) /* 8004AD8C 00047CEC 83 FB 08 10 */ lwz r31, 0x810(r27) /* 8004AD90 00047CF0 2C 00 00 01 */ cmpwi r0, 1 /* 8004AD94 00047CF4 40 82 00 70 */ bne lbl_8004AE04 /* 8004AD98 00047CF8 AB 9F 20 08 */ lha r28, 0x2008(r31) /* 8004AD9C 00047CFC 48 00 00 5C */ b lbl_8004ADF8 lbl_8004ADA0: /* 8004ADA0 00047D00 7F E3 FB 78 */ mr r3, r31 /* 8004ADA4 00047D04 7F 84 E3 78 */ mr r4, r28 /* 8004ADA8 00047D08 4B FC 4F 6D */ bl __vc__11CObjectListFi /* 8004ADAC 00047D0C 7C 64 1B 78 */ mr r4, r3 /* 8004ADB0 00047D10 38 61 00 20 */ addi r3, r1, 0x20 /* 8004ADB4 00047D14 48 05 F0 29 */ bl "__ct__27TCastToPtr<13CScriptEffect>FP7CEntity" /* 8004ADB8 00047D18 80 63 00 04 */ lwz r3, 4(r3) /* 8004ADBC 00047D1C 28 03 00 00 */ cmplwi r3, 0 /* 8004ADC0 00047D20 41 82 00 1C */ beq lbl_8004ADDC /* 8004ADC4 00047D24 81 83 00 00 */ lwz r12, 0(r3) /* 8004ADC8 00047D28 FC 20 F8 90 */ fmr f1, f31 /* 8004ADCC 00047D2C 7F 64 DB 78 */ mr r4, r27 /* 8004ADD0 00047D30 81 8C 00 14 */ lwz r12, 0x14(r12) /* 8004ADD4 00047D34 7D 89 03 A6 */ mtctr r12 /* 8004ADD8 00047D38 4E 80 04 21 */ bctrl lbl_8004ADDC: /* 8004ADDC 00047D3C 2C 1C FF FF */ cmpwi r28, -1 /* 8004ADE0 00047D40 41 82 00 14 */ beq lbl_8004ADF4 /* 8004ADE4 00047D44 57 83 18 38 */ slwi r3, r28, 3 /* 8004ADE8 00047D48 38 03 00 08 */ addi r0, r3, 8 /* 8004ADEC 00047D4C 7F 9F 02 AE */ lhax r28, r31, r0 /* 8004ADF0 00047D50 48 00 00 08 */ b lbl_8004ADF8 lbl_8004ADF4: /* 8004ADF4 00047D54 3B 80 FF FF */ li r28, -1 lbl_8004ADF8: /* 8004ADF8 00047D58 2C 1C FF FF */ cmpwi r28, -1 /* 8004ADFC 00047D5C 40 82 FF A4 */ bne lbl_8004ADA0 /* 8004AE00 00047D60 48 00 01 14 */ b lbl_8004AF14 lbl_8004AE04: /* 8004AE04 00047D64 83 DB 08 28 */ lwz r30, 0x828(r27) /* 8004AE08 00047D68 AB BF 20 08 */ lha r29, 0x2008(r31) /* 8004AE0C 00047D6C 48 00 01 00 */ b lbl_8004AF0C lbl_8004AE10: /* 8004AE10 00047D70 7F E3 FB 78 */ mr r3, r31 /* 8004AE14 00047D74 7F A4 EB 78 */ mr r4, r29 /* 8004AE18 00047D78 4B FC 4E FD */ bl __vc__11CObjectListFi /* 8004AE1C 00047D7C 7C 7C 1B 79 */ or. r28, r3, r3 /* 8004AE20 00047D80 41 82 00 D0 */ beq lbl_8004AEF0 /* 8004AE24 00047D84 7F 84 E3 78 */ mr r4, r28 /* 8004AE28 00047D88 38 61 00 18 */ addi r3, r1, 0x18 /* 8004AE2C 00047D8C 48 06 1C 31 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" /* 8004AE30 00047D90 80 83 00 04 */ lwz r4, 4(r3) /* 8004AE34 00047D94 28 04 00 00 */ cmplwi r4, 0 /* 8004AE38 00047D98 41 82 00 7C */ beq lbl_8004AEB4 /* 8004AE3C 00047D9C 88 1B 0F 94 */ lbz r0, 0xf94(r27) /* 8004AE40 00047DA0 54 00 F7 FE */ rlwinm r0, r0, 0x1e, 0x1f, 0x1f /* 8004AE44 00047DA4 7C 03 00 34 */ cntlzw r3, r0 /* 8004AE48 00047DA8 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f /* 8004AE4C 00047DAC 54 65 D9 7E */ srwi r5, r3, 5 /* 8004AE50 00047DB0 41 82 00 5C */ beq lbl_8004AEAC /* 8004AE54 00047DB4 80 C4 00 04 */ lwz r6, 4(r4) /* 8004AE58 00047DB8 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8004AE5C 00047DBC 7C 06 00 00 */ cmpw r6, r0 /* 8004AE60 00047DC0 41 82 00 4C */ beq lbl_8004AEAC /* 8004AE64 00047DC4 80 9B 08 50 */ lwz r4, 0x850(r27) /* 8004AE68 00047DC8 54 C3 18 38 */ slwi r3, r6, 3 /* 8004AE6C 00047DCC 38 03 00 04 */ addi r0, r3, 4 /* 8004AE70 00047DD0 90 C1 00 14 */ stw r6, 0x14(r1) /* 8004AE74 00047DD4 80 64 00 20 */ lwz r3, 0x20(r4) /* 8004AE78 00047DD8 90 C1 00 10 */ stw r6, 0x10(r1) /* 8004AE7C 00047DDC 7C 63 00 2E */ lwzx r3, r3, r0 /* 8004AE80 00047DE0 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 8004AE84 00047DE4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004AE88 00047DE8 41 82 00 10 */ beq lbl_8004AE98 /* 8004AE8C 00047DEC 80 63 01 2C */ lwz r3, 0x12c(r3) /* 8004AE90 00047DF0 C0 23 10 E4 */ lfs f1, 0x10e4(r3) /* 8004AE94 00047DF4 48 00 00 08 */ b lbl_8004AE9C lbl_8004AE98: /* 8004AE98 00047DF8 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) lbl_8004AE9C: /* 8004AE9C 00047DFC C0 02 86 1C */ lfs f0, lbl_805AA33C@sda21(r2) /* 8004AEA0 00047E00 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004AEA4 00047E04 40 81 00 08 */ ble lbl_8004AEAC /* 8004AEA8 00047E08 38 A0 00 00 */ li r5, 0 lbl_8004AEAC: /* 8004AEAC 00047E0C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 /* 8004AEB0 00047E10 41 82 00 40 */ beq lbl_8004AEF0 lbl_8004AEB4: /* 8004AEB4 00047E14 A0 1C 00 08 */ lhz r0, 8(r28) /* 8004AEB8 00047E18 7F C3 F3 78 */ mr r3, r30 /* 8004AEBC 00047E1C 38 81 00 0C */ addi r4, r1, 0xc /* 8004AEC0 00047E20 B0 01 00 08 */ sth r0, 8(r1) /* 8004AEC4 00047E24 B0 01 00 0C */ sth r0, 0xc(r1) /* 8004AEC8 00047E28 4B FC 4F 81 */ bl GetObjectById__11CObjectListF9TUniqueId /* 8004AECC 00047E2C 28 03 00 00 */ cmplwi r3, 0 /* 8004AED0 00047E30 40 82 00 20 */ bne lbl_8004AEF0 /* 8004AED4 00047E34 7F 83 E3 78 */ mr r3, r28 /* 8004AED8 00047E38 FC 20 F8 90 */ fmr f1, f31 /* 8004AEDC 00047E3C 81 9C 00 00 */ lwz r12, 0(r28) /* 8004AEE0 00047E40 7F 64 DB 78 */ mr r4, r27 /* 8004AEE4 00047E44 81 8C 00 14 */ lwz r12, 0x14(r12) /* 8004AEE8 00047E48 7D 89 03 A6 */ mtctr r12 /* 8004AEEC 00047E4C 4E 80 04 21 */ bctrl lbl_8004AEF0: /* 8004AEF0 00047E50 2C 1D FF FF */ cmpwi r29, -1 /* 8004AEF4 00047E54 41 82 00 14 */ beq lbl_8004AF08 /* 8004AEF8 00047E58 57 A3 18 38 */ slwi r3, r29, 3 /* 8004AEFC 00047E5C 38 03 00 08 */ addi r0, r3, 8 /* 8004AF00 00047E60 7F BF 02 AE */ lhax r29, r31, r0 /* 8004AF04 00047E64 48 00 00 08 */ b lbl_8004AF0C lbl_8004AF08: /* 8004AF08 00047E68 3B A0 FF FF */ li r29, -1 lbl_8004AF0C: /* 8004AF0C 00047E6C 2C 1D FF FF */ cmpwi r29, -1 /* 8004AF10 00047E70 40 82 FF 00 */ bne lbl_8004AE10 lbl_8004AF14: /* 8004AF14 00047E74 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 8004AF18 00047E78 CB E1 00 40 */ lfd f31, 0x40(r1) /* 8004AF1C 00047E7C BB 61 00 2C */ lmw r27, 0x2c(r1) /* 8004AF20 00047E80 80 01 00 54 */ lwz r0, 0x54(r1) /* 8004AF24 00047E84 7C 08 03 A6 */ mtlr r0 /* 8004AF28 00047E88 38 21 00 50 */ addi r1, r1, 0x50 /* 8004AF2C 00047E8C 4E 80 00 20 */ blr .global CrossTouchActors__13CStateManagerFf CrossTouchActors__13CStateManagerFf: /* 8004AF30 00047E90 94 21 F3 30 */ stwu r1, -0xcd0(r1) /* 8004AF34 00047E94 7C 08 02 A6 */ mflr r0 /* 8004AF38 00047E98 38 80 00 00 */ li r4, 0 /* 8004AF3C 00047E9C 38 A0 04 00 */ li r5, 0x400 /* 8004AF40 00047EA0 90 01 0C D4 */ stw r0, 0xcd4(r1) /* 8004AF44 00047EA4 BF 21 0C B4 */ stmw r25, 0xcb4(r1) /* 8004AF48 00047EA8 7C 79 1B 78 */ mr r25, r3 /* 8004AF4C 00047EAC 38 61 08 B0 */ addi r3, r1, 0x8b0 /* 8004AF50 00047EB0 83 F9 08 18 */ lwz r31, 0x818(r25) /* 8004AF54 00047EB4 4B FB 84 55 */ bl memset /* 8004AF58 00047EB8 AB BF 20 08 */ lha r29, 0x2008(r31) /* 8004AF5C 00047EBC 3B C1 00 B0 */ addi r30, r1, 0xb0 /* 8004AF60 00047EC0 48 00 03 10 */ b lbl_8004B270 lbl_8004AF64: /* 8004AF64 00047EC4 7F E3 FB 78 */ mr r3, r31 /* 8004AF68 00047EC8 7F A4 EB 78 */ mr r4, r29 /* 8004AF6C 00047ECC 4B FC 4D A9 */ bl __vc__11CObjectListFi /* 8004AF70 00047ED0 7C 7C 1B 79 */ or. r28, r3, r3 /* 8004AF74 00047ED4 41 82 02 E0 */ beq lbl_8004B254 /* 8004AF78 00047ED8 88 1C 00 30 */ lbz r0, 0x30(r28) /* 8004AF7C 00047EDC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004AF80 00047EE0 41 82 02 D4 */ beq lbl_8004B254 /* 8004AF84 00047EE4 48 00 94 45 */ bl GetCallTouch__6CActorCFv /* 8004AF88 00047EE8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004AF8C 00047EEC 41 82 02 C8 */ beq lbl_8004B254 /* 8004AF90 00047EF0 7F 84 E3 78 */ mr r4, r28 /* 8004AF94 00047EF4 38 61 00 40 */ addi r3, r1, 0x40 /* 8004AF98 00047EF8 81 9C 00 00 */ lwz r12, 0(r28) /* 8004AF9C 00047EFC 81 8C 00 40 */ lwz r12, 0x40(r12) /* 8004AFA0 00047F00 7D 89 03 A6 */ mtctr r12 /* 8004AFA4 00047F04 4E 80 04 21 */ bctrl /* 8004AFA8 00047F08 88 01 00 58 */ lbz r0, 0x58(r1) /* 8004AFAC 00047F0C 28 00 00 00 */ cmplwi r0, 0 /* 8004AFB0 00047F10 98 01 00 A8 */ stb r0, 0xa8(r1) /* 8004AFB4 00047F14 41 82 00 3C */ beq lbl_8004AFF0 /* 8004AFB8 00047F18 34 61 00 90 */ addic. r3, r1, 0x90 /* 8004AFBC 00047F1C 41 82 00 34 */ beq lbl_8004AFF0 /* 8004AFC0 00047F20 C0 01 00 40 */ lfs f0, 0x40(r1) /* 8004AFC4 00047F24 D0 03 00 00 */ stfs f0, 0(r3) /* 8004AFC8 00047F28 C0 01 00 44 */ lfs f0, 0x44(r1) /* 8004AFCC 00047F2C D0 03 00 04 */ stfs f0, 4(r3) /* 8004AFD0 00047F30 C0 01 00 48 */ lfs f0, 0x48(r1) /* 8004AFD4 00047F34 D0 03 00 08 */ stfs f0, 8(r3) /* 8004AFD8 00047F38 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 8004AFDC 00047F3C D0 03 00 0C */ stfs f0, 0xc(r3) /* 8004AFE0 00047F40 C0 01 00 50 */ lfs f0, 0x50(r1) /* 8004AFE4 00047F44 D0 03 00 10 */ stfs f0, 0x10(r3) /* 8004AFE8 00047F48 C0 01 00 54 */ lfs f0, 0x54(r1) /* 8004AFEC 00047F4C D0 03 00 14 */ stfs f0, 0x14(r3) lbl_8004AFF0: /* 8004AFF0 00047F50 88 01 00 A8 */ lbz r0, 0xa8(r1) /* 8004AFF4 00047F54 38 A0 00 00 */ li r5, 0 /* 8004AFF8 00047F58 98 A1 00 58 */ stb r5, 0x58(r1) /* 8004AFFC 00047F5C 28 00 00 00 */ cmplwi r0, 0 /* 8004B000 00047F60 40 82 00 0C */ bne lbl_8004B00C /* 8004B004 00047F64 98 A1 00 A8 */ stb r5, 0xa8(r1) /* 8004B008 00047F68 48 00 02 4C */ b lbl_8004B254 lbl_8004B00C: /* 8004B00C 00047F6C 90 A1 00 AC */ stw r5, 0xac(r1) /* 8004B010 00047F70 38 00 00 04 */ li r0, 4 /* 8004B014 00047F74 80 7C 00 68 */ lwz r3, 0x68(r28) /* 8004B018 00047F78 80 9C 00 6C */ lwz r4, 0x6c(r28) /* 8004B01C 00047F7C 7C 60 00 38 */ and r0, r3, r0 /* 8004B020 00047F80 7C 83 28 38 */ and r3, r4, r5 /* 8004B024 00047F84 7C 63 2A 78 */ xor r3, r3, r5 /* 8004B028 00047F88 7C 00 2A 78 */ xor r0, r0, r5 /* 8004B02C 00047F8C 7C 60 03 79 */ or. r0, r3, r0 /* 8004B030 00047F90 41 82 00 3C */ beq lbl_8004B06C /* 8004B034 00047F94 80 AD 82 70 */ lwz r5, lbl_805A6E30@sda21(r13) /* 8004B038 00047F98 38 60 00 00 */ li r3, 0 /* 8004B03C 00047F9C 38 80 00 01 */ li r4, 1 /* 8004B040 00047FA0 48 33 EE B5 */ bl __shl2i /* 8004B044 00047FA4 38 C0 FF FF */ li r6, -1 /* 8004B048 00047FA8 38 A0 00 00 */ li r5, 0 /* 8004B04C 00047FAC 38 00 00 02 */ li r0, 2 /* 8004B050 00047FB0 90 C1 00 2C */ stw r6, 0x2c(r1) /* 8004B054 00047FB4 39 21 00 28 */ addi r9, r1, 0x28 /* 8004B058 00047FB8 90 A1 00 28 */ stw r5, 0x28(r1) /* 8004B05C 00047FBC 90 81 00 34 */ stw r4, 0x34(r1) /* 8004B060 00047FC0 90 61 00 30 */ stw r3, 0x30(r1) /* 8004B064 00047FC4 90 01 00 38 */ stw r0, 0x38(r1) /* 8004B068 00047FC8 48 00 00 0C */ b lbl_8004B074 lbl_8004B06C: /* 8004B06C 00047FCC 3C 60 80 5A */ lis r3, lbl_8059FD18@ha /* 8004B070 00047FD0 39 23 FD 18 */ addi r9, r3, lbl_8059FD18@l lbl_8004B074: /* 8004B074 00047FD4 80 09 00 00 */ lwz r0, 0(r9) /* 8004B078 00047FD8 7F 23 CB 78 */ mr r3, r25 /* 8004B07C 00047FDC 80 C9 00 04 */ lwz r6, 4(r9) /* 8004B080 00047FE0 7F 87 E3 78 */ mr r7, r28 /* 8004B084 00047FE4 38 81 00 AC */ addi r4, r1, 0xac /* 8004B088 00047FE8 38 A1 00 90 */ addi r5, r1, 0x90 /* 8004B08C 00047FEC 90 C1 00 7C */ stw r6, 0x7c(r1) /* 8004B090 00047FF0 38 C1 00 78 */ addi r6, r1, 0x78 /* 8004B094 00047FF4 90 01 00 78 */ stw r0, 0x78(r1) /* 8004B098 00047FF8 80 09 00 08 */ lwz r0, 8(r9) /* 8004B09C 00047FFC 81 09 00 0C */ lwz r8, 0xc(r9) /* 8004B0A0 00048000 91 01 00 84 */ stw r8, 0x84(r1) /* 8004B0A4 00048004 90 01 00 80 */ stw r0, 0x80(r1) /* 8004B0A8 00048008 80 09 00 10 */ lwz r0, 0x10(r9) /* 8004B0AC 0004800C 90 01 00 88 */ stw r0, 0x88(r1) /* 8004B0B0 00048010 48 00 16 71 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" /* 8004B0B4 00048014 7F DB F3 78 */ mr r27, r30 /* 8004B0B8 00048018 48 00 01 30 */ b lbl_8004B1E8 lbl_8004B0BC: /* 8004B0BC 0004801C A0 1B 00 00 */ lhz r0, 0(r27) /* 8004B0C0 00048020 7F 23 CB 78 */ mr r3, r25 /* 8004B0C4 00048024 38 81 00 08 */ addi r4, r1, 8 /* 8004B0C8 00048028 B0 01 00 08 */ sth r0, 8(r1) /* 8004B0CC 0004802C 48 00 14 A9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8004B0D0 00048030 7C 7A 1B 79 */ or. r26, r3, r3 /* 8004B0D4 00048034 41 82 01 10 */ beq lbl_8004B1E4 /* 8004B0D8 00048038 7F 44 D3 78 */ mr r4, r26 /* 8004B0DC 0004803C 38 61 00 0C */ addi r3, r1, 0xc /* 8004B0E0 00048040 81 9A 00 00 */ lwz r12, 0(r26) /* 8004B0E4 00048044 81 8C 00 40 */ lwz r12, 0x40(r12) /* 8004B0E8 00048048 7D 89 03 A6 */ mtctr r12 /* 8004B0EC 0004804C 4E 80 04 21 */ bctrl /* 8004B0F0 00048050 88 01 00 24 */ lbz r0, 0x24(r1) /* 8004B0F4 00048054 28 00 00 00 */ cmplwi r0, 0 /* 8004B0F8 00048058 98 01 00 74 */ stb r0, 0x74(r1) /* 8004B0FC 0004805C 41 82 00 3C */ beq lbl_8004B138 /* 8004B100 00048060 34 61 00 5C */ addic. r3, r1, 0x5c /* 8004B104 00048064 41 82 00 34 */ beq lbl_8004B138 /* 8004B108 00048068 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8004B10C 0004806C D0 03 00 00 */ stfs f0, 0(r3) /* 8004B110 00048070 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004B114 00048074 D0 03 00 04 */ stfs f0, 4(r3) /* 8004B118 00048078 C0 01 00 14 */ lfs f0, 0x14(r1) /* 8004B11C 0004807C D0 03 00 08 */ stfs f0, 8(r3) /* 8004B120 00048080 C0 01 00 18 */ lfs f0, 0x18(r1) /* 8004B124 00048084 D0 03 00 0C */ stfs f0, 0xc(r3) /* 8004B128 00048088 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8004B12C 0004808C D0 03 00 10 */ stfs f0, 0x10(r3) /* 8004B130 00048090 C0 01 00 20 */ lfs f0, 0x20(r1) /* 8004B134 00048094 D0 03 00 14 */ stfs f0, 0x14(r3) lbl_8004B138: /* 8004B138 00048098 38 00 00 00 */ li r0, 0 /* 8004B13C 0004809C 98 01 00 24 */ stb r0, 0x24(r1) /* 8004B140 000480A0 88 1A 00 30 */ lbz r0, 0x30(r26) /* 8004B144 000480A4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004B148 000480A8 41 82 00 10 */ beq lbl_8004B158 /* 8004B14C 000480AC 88 01 00 74 */ lbz r0, 0x74(r1) /* 8004B150 000480B0 28 00 00 00 */ cmplwi r0, 0 /* 8004B154 000480B4 40 82 00 10 */ bne lbl_8004B164 lbl_8004B158: /* 8004B158 000480B8 38 00 00 00 */ li r0, 0 /* 8004B15C 000480BC 98 01 00 74 */ stb r0, 0x74(r1) /* 8004B160 000480C0 48 00 00 84 */ b lbl_8004B1E4 lbl_8004B164: /* 8004B164 000480C4 A0 1A 00 08 */ lhz r0, 8(r26) /* 8004B168 000480C8 38 61 08 B0 */ addi r3, r1, 0x8b0 /* 8004B16C 000480CC 54 00 05 BE */ clrlwi r0, r0, 0x16 /* 8004B170 000480D0 7C 03 00 AE */ lbzx r0, r3, r0 /* 8004B174 000480D4 28 00 00 00 */ cmplwi r0, 0 /* 8004B178 000480D8 40 82 00 64 */ bne lbl_8004B1DC /* 8004B17C 000480DC 38 61 00 90 */ addi r3, r1, 0x90 /* 8004B180 000480E0 38 81 00 5C */ addi r4, r1, 0x5c /* 8004B184 000480E4 48 2E CA 01 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox /* 8004B188 000480E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004B18C 000480EC 41 82 00 3C */ beq lbl_8004B1C8 /* 8004B190 000480F0 7F 83 E3 78 */ mr r3, r28 /* 8004B194 000480F4 7F 44 D3 78 */ mr r4, r26 /* 8004B198 000480F8 81 9C 00 00 */ lwz r12, 0(r28) /* 8004B19C 000480FC 7F 25 CB 78 */ mr r5, r25 /* 8004B1A0 00048100 81 8C 00 44 */ lwz r12, 0x44(r12) /* 8004B1A4 00048104 7D 89 03 A6 */ mtctr r12 /* 8004B1A8 00048108 4E 80 04 21 */ bctrl /* 8004B1AC 0004810C 7F 43 D3 78 */ mr r3, r26 /* 8004B1B0 00048110 7F 84 E3 78 */ mr r4, r28 /* 8004B1B4 00048114 81 9A 00 00 */ lwz r12, 0(r26) /* 8004B1B8 00048118 7F 25 CB 78 */ mr r5, r25 /* 8004B1BC 0004811C 81 8C 00 44 */ lwz r12, 0x44(r12) /* 8004B1C0 00048120 7D 89 03 A6 */ mtctr r12 /* 8004B1C4 00048124 4E 80 04 21 */ bctrl lbl_8004B1C8: /* 8004B1C8 00048128 A0 1C 00 08 */ lhz r0, 8(r28) /* 8004B1CC 0004812C 38 61 08 B0 */ addi r3, r1, 0x8b0 /* 8004B1D0 00048130 38 80 00 01 */ li r4, 1 /* 8004B1D4 00048134 54 00 05 BE */ clrlwi r0, r0, 0x16 /* 8004B1D8 00048138 7C 83 01 AE */ stbx r4, r3, r0 lbl_8004B1DC: /* 8004B1DC 0004813C 38 00 00 00 */ li r0, 0 /* 8004B1E0 00048140 98 01 00 74 */ stb r0, 0x74(r1) lbl_8004B1E4: /* 8004B1E4 00048144 3B 7B 00 02 */ addi r27, r27, 2 lbl_8004B1E8: /* 8004B1E8 00048148 80 A1 00 AC */ lwz r5, 0xac(r1) /* 8004B1EC 0004814C 54 A0 08 3C */ slwi r0, r5, 1 /* 8004B1F0 00048150 7C 1E 02 14 */ add r0, r30, r0 /* 8004B1F4 00048154 7C 1B 00 40 */ cmplw r27, r0 /* 8004B1F8 00048158 40 82 FE C4 */ bne lbl_8004B0BC /* 8004B1FC 0004815C 2C 05 00 00 */ cmpwi r5, 0 /* 8004B200 00048160 38 60 00 00 */ li r3, 0 /* 8004B204 00048164 40 81 00 44 */ ble lbl_8004B248 /* 8004B208 00048168 2C 05 00 08 */ cmpwi r5, 8 /* 8004B20C 0004816C 38 85 FF F8 */ addi r4, r5, -8 /* 8004B210 00048170 40 81 00 20 */ ble lbl_8004B230 /* 8004B214 00048174 38 04 00 07 */ addi r0, r4, 7 /* 8004B218 00048178 54 00 E8 FE */ srwi r0, r0, 3 /* 8004B21C 0004817C 7C 09 03 A6 */ mtctr r0 /* 8004B220 00048180 2C 04 00 00 */ cmpwi r4, 0 /* 8004B224 00048184 40 81 00 0C */ ble lbl_8004B230 lbl_8004B228: /* 8004B228 00048188 38 63 00 08 */ addi r3, r3, 8 /* 8004B22C 0004818C 42 00 FF FC */ bdnz lbl_8004B228 lbl_8004B230: /* 8004B230 00048190 7C 03 28 50 */ subf r0, r3, r5 /* 8004B234 00048194 7C 09 03 A6 */ mtctr r0 /* 8004B238 00048198 7C 03 28 00 */ cmpw r3, r5 /* 8004B23C 0004819C 40 80 00 0C */ bge lbl_8004B248 lbl_8004B240: /* 8004B240 000481A0 38 63 00 01 */ addi r3, r3, 1 /* 8004B244 000481A4 42 00 FF FC */ bdnz lbl_8004B240 lbl_8004B248: /* 8004B248 000481A8 38 00 00 00 */ li r0, 0 /* 8004B24C 000481AC 90 01 00 AC */ stw r0, 0xac(r1) /* 8004B250 000481B0 98 01 00 A8 */ stb r0, 0xa8(r1) lbl_8004B254: /* 8004B254 000481B4 2C 1D FF FF */ cmpwi r29, -1 /* 8004B258 000481B8 41 82 00 14 */ beq lbl_8004B26C /* 8004B25C 000481BC 57 A3 18 38 */ slwi r3, r29, 3 /* 8004B260 000481C0 38 03 00 08 */ addi r0, r3, 8 /* 8004B264 000481C4 7F BF 02 AE */ lhax r29, r31, r0 /* 8004B268 000481C8 48 00 00 08 */ b lbl_8004B270 lbl_8004B26C: /* 8004B26C 000481CC 3B A0 FF FF */ li r29, -1 lbl_8004B270: /* 8004B270 000481D0 2C 1D FF FF */ cmpwi r29, -1 /* 8004B274 000481D4 40 82 FC F0 */ bne lbl_8004AF64 /* 8004B278 000481D8 BB 21 0C B4 */ lmw r25, 0xcb4(r1) /* 8004B27C 000481DC 80 01 0C D4 */ lwz r0, 0xcd4(r1) /* 8004B280 000481E0 7C 08 03 A6 */ mtlr r0 /* 8004B284 000481E4 38 21 0C D0 */ addi r1, r1, 0xcd0 /* 8004B288 000481E8 4E 80 00 20 */ blr .global MoveDoors__13CStateManagerFf MoveDoors__13CStateManagerFf: /* 8004B28C 000481EC 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8004B290 000481F0 7C 08 02 A6 */ mflr r0 /* 8004B294 000481F4 90 01 00 54 */ stw r0, 0x54(r1) /* 8004B298 000481F8 DB E1 00 40 */ stfd f31, 0x40(r1) /* 8004B29C 000481FC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 8004B2A0 00048200 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8004B2A4 00048204 93 C1 00 38 */ stw r30, 0x38(r1) /* 8004B2A8 00048208 93 A1 00 34 */ stw r29, 0x34(r1) /* 8004B2AC 0004820C 93 81 00 30 */ stw r28, 0x30(r1) /* 8004B2B0 00048210 83 E3 08 20 */ lwz r31, 0x820(r3) /* 8004B2B4 00048214 FF E0 08 90 */ fmr f31, f1 /* 8004B2B8 00048218 7C 7C 1B 78 */ mr r28, r3 /* 8004B2BC 0004821C AB DF 20 08 */ lha r30, 0x2008(r31) /* 8004B2C0 00048220 48 00 01 3C */ b lbl_8004B3FC lbl_8004B2C4: /* 8004B2C4 00048224 7F E3 FB 78 */ mr r3, r31 /* 8004B2C8 00048228 7F C4 F3 78 */ mr r4, r30 /* 8004B2CC 0004822C 4B FC 4A 49 */ bl __vc__11CObjectListFi /* 8004B2D0 00048230 7C 7D 1B 79 */ or. r29, r3, r3 /* 8004B2D4 00048234 41 82 01 0C */ beq lbl_8004B3E0 /* 8004B2D8 00048238 88 1D 00 30 */ lbz r0, 0x30(r29) /* 8004B2DC 0004823C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004B2E0 00048240 41 82 01 00 */ beq lbl_8004B3E0 /* 8004B2E4 00048244 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 8004B2E8 00048248 C0 1D 00 E8 */ lfs f0, 0xe8(r29) /* 8004B2EC 0004824C FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8004B2F0 00048250 41 82 00 F0 */ beq lbl_8004B3E0 /* 8004B2F4 00048254 7F A4 EB 78 */ mr r4, r29 /* 8004B2F8 00048258 38 61 00 1C */ addi r3, r1, 0x1c /* 8004B2FC 0004825C 48 06 17 61 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" /* 8004B300 00048260 80 E3 00 04 */ lwz r7, 4(r3) /* 8004B304 00048264 28 07 00 00 */ cmplwi r7, 0 /* 8004B308 00048268 41 82 00 A8 */ beq lbl_8004B3B0 /* 8004B30C 0004826C 88 1C 0F 94 */ lbz r0, 0xf94(r28) /* 8004B310 00048270 54 00 F7 FE */ rlwinm r0, r0, 0x1e, 0x1f, 0x1f /* 8004B314 00048274 7C 03 00 34 */ cntlzw r3, r0 /* 8004B318 00048278 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f /* 8004B31C 0004827C 54 65 D9 7E */ srwi r5, r3, 5 /* 8004B320 00048280 41 82 00 5C */ beq lbl_8004B37C /* 8004B324 00048284 80 C7 00 04 */ lwz r6, 4(r7) /* 8004B328 00048288 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8004B32C 0004828C 7C 06 00 00 */ cmpw r6, r0 /* 8004B330 00048290 41 82 00 4C */ beq lbl_8004B37C /* 8004B334 00048294 80 9C 08 50 */ lwz r4, 0x850(r28) /* 8004B338 00048298 54 C3 18 38 */ slwi r3, r6, 3 /* 8004B33C 0004829C 38 03 00 04 */ addi r0, r3, 4 /* 8004B340 000482A0 90 C1 00 18 */ stw r6, 0x18(r1) /* 8004B344 000482A4 80 64 00 20 */ lwz r3, 0x20(r4) /* 8004B348 000482A8 90 C1 00 14 */ stw r6, 0x14(r1) /* 8004B34C 000482AC 7C 63 00 2E */ lwzx r3, r3, r0 /* 8004B350 000482B0 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 8004B354 000482B4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004B358 000482B8 41 82 00 10 */ beq lbl_8004B368 /* 8004B35C 000482BC 80 63 01 2C */ lwz r3, 0x12c(r3) /* 8004B360 000482C0 C0 23 10 E4 */ lfs f1, 0x10e4(r3) /* 8004B364 000482C4 48 00 00 08 */ b lbl_8004B36C lbl_8004B368: /* 8004B368 000482C8 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) lbl_8004B36C: /* 8004B36C 000482CC C0 02 86 1C */ lfs f0, lbl_805AA33C@sda21(r2) /* 8004B370 000482D0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004B374 000482D4 40 81 00 08 */ ble lbl_8004B37C /* 8004B378 000482D8 38 A0 00 00 */ li r5, 0 lbl_8004B37C: /* 8004B37C 000482DC 54 A0 06 3F */ clrlwi. r0, r5, 0x18 /* 8004B380 000482E0 40 82 00 30 */ bne lbl_8004B3B0 /* 8004B384 000482E4 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004B388 000482E8 7F 83 E3 78 */ mr r3, r28 /* 8004B38C 000482EC 38 81 00 10 */ addi r4, r1, 0x10 /* 8004B390 000482F0 38 A1 00 08 */ addi r5, r1, 8 /* 8004B394 000482F4 B0 01 00 08 */ sth r0, 8(r1) /* 8004B398 000482F8 38 C0 00 30 */ li r6, 0x30 /* 8004B39C 000482FC A0 07 00 08 */ lhz r0, 8(r7) /* 8004B3A0 00048300 B0 01 00 0C */ sth r0, 0xc(r1) /* 8004B3A4 00048304 B0 01 00 10 */ sth r0, 0x10(r1) /* 8004B3A8 00048308 4B FF 8A AD */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId /* 8004B3AC 0004830C 48 00 00 34 */ b lbl_8004B3E0 lbl_8004B3B0: /* 8004B3B0 00048310 80 1C 08 4C */ lwz r0, 0x84c(r28) /* 8004B3B4 00048314 7C 1D 00 40 */ cmplw r29, r0 /* 8004B3B8 00048318 41 82 00 28 */ beq lbl_8004B3E0 /* 8004B3BC 0004831C 7F A3 EB 78 */ mr r3, r29 /* 8004B3C0 00048320 48 16 D1 C5 */ bl IsPlatform__20CPlatformAndDoorListFPC7CEntity /* 8004B3C4 00048324 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004B3C8 00048328 40 82 00 18 */ bne lbl_8004B3E0 /* 8004B3CC 0004832C FC 20 F8 90 */ fmr f1, f31 /* 8004B3D0 00048330 7F 83 E3 78 */ mr r3, r28 /* 8004B3D4 00048334 7F A4 EB 78 */ mr r4, r29 /* 8004B3D8 00048338 38 A0 00 00 */ li r5, 0 /* 8004B3DC 0004833C 48 13 69 5D */ bl "Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" lbl_8004B3E0: /* 8004B3E0 00048340 2C 1E FF FF */ cmpwi r30, -1 /* 8004B3E4 00048344 41 82 00 14 */ beq lbl_8004B3F8 /* 8004B3E8 00048348 57 C3 18 38 */ slwi r3, r30, 3 /* 8004B3EC 0004834C 38 03 00 08 */ addi r0, r3, 8 /* 8004B3F0 00048350 7F DF 02 AE */ lhax r30, r31, r0 /* 8004B3F4 00048354 48 00 00 08 */ b lbl_8004B3FC lbl_8004B3F8: /* 8004B3F8 00048358 3B C0 FF FF */ li r30, -1 lbl_8004B3FC: /* 8004B3FC 0004835C 2C 1E FF FF */ cmpwi r30, -1 /* 8004B400 00048360 40 82 FE C4 */ bne lbl_8004B2C4 /* 8004B404 00048364 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 8004B408 00048368 80 01 00 54 */ lwz r0, 0x54(r1) /* 8004B40C 0004836C CB E1 00 40 */ lfd f31, 0x40(r1) /* 8004B410 00048370 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8004B414 00048374 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8004B418 00048378 83 A1 00 34 */ lwz r29, 0x34(r1) /* 8004B41C 0004837C 83 81 00 30 */ lwz r28, 0x30(r1) /* 8004B420 00048380 7C 08 03 A6 */ mtlr r0 /* 8004B424 00048384 38 21 00 50 */ addi r1, r1, 0x50 /* 8004B428 00048388 4E 80 00 20 */ blr .global MovePlatforms__13CStateManagerFf MovePlatforms__13CStateManagerFf: /* 8004B42C 0004838C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004B430 00048390 7C 08 02 A6 */ mflr r0 /* 8004B434 00048394 90 01 00 34 */ stw r0, 0x34(r1) /* 8004B438 00048398 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8004B43C 0004839C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8004B440 000483A0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004B444 000483A4 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004B448 000483A8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004B44C 000483AC 93 81 00 10 */ stw r28, 0x10(r1) /* 8004B450 000483B0 83 E3 08 48 */ lwz r31, 0x848(r3) /* 8004B454 000483B4 FF E0 08 90 */ fmr f31, f1 /* 8004B458 000483B8 7C 7C 1B 78 */ mr r28, r3 /* 8004B45C 000483BC AB DF 20 08 */ lha r30, 0x2008(r31) /* 8004B460 000483C0 48 00 00 74 */ b lbl_8004B4D4 lbl_8004B464: /* 8004B464 000483C4 7F E3 FB 78 */ mr r3, r31 /* 8004B468 000483C8 7F C4 F3 78 */ mr r4, r30 /* 8004B46C 000483CC 4B FC 48 A9 */ bl __vc__11CObjectListFi /* 8004B470 000483D0 7C 7D 1B 78 */ mr r29, r3 /* 8004B474 000483D4 48 16 D1 11 */ bl IsPlatform__20CPlatformAndDoorListFPC7CEntity /* 8004B478 000483D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004B47C 000483DC 41 82 00 3C */ beq lbl_8004B4B8 /* 8004B480 000483E0 28 1D 00 00 */ cmplwi r29, 0 /* 8004B484 000483E4 41 82 00 34 */ beq lbl_8004B4B8 /* 8004B488 000483E8 88 1D 00 30 */ lbz r0, 0x30(r29) /* 8004B48C 000483EC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004B490 000483F0 41 82 00 28 */ beq lbl_8004B4B8 /* 8004B494 000483F4 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 8004B498 000483F8 C0 1D 00 E8 */ lfs f0, 0xe8(r29) /* 8004B49C 000483FC FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8004B4A0 00048400 41 82 00 18 */ beq lbl_8004B4B8 /* 8004B4A4 00048404 FC 20 F8 90 */ fmr f1, f31 /* 8004B4A8 00048408 7F 83 E3 78 */ mr r3, r28 /* 8004B4AC 0004840C 7F A4 EB 78 */ mr r4, r29 /* 8004B4B0 00048410 38 A0 00 00 */ li r5, 0 /* 8004B4B4 00048414 48 13 68 85 */ bl "Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" lbl_8004B4B8: /* 8004B4B8 00048418 2C 1E FF FF */ cmpwi r30, -1 /* 8004B4BC 0004841C 41 82 00 14 */ beq lbl_8004B4D0 /* 8004B4C0 00048420 57 C3 18 38 */ slwi r3, r30, 3 /* 8004B4C4 00048424 38 03 00 08 */ addi r0, r3, 8 /* 8004B4C8 00048428 7F DF 02 AE */ lhax r30, r31, r0 /* 8004B4CC 0004842C 48 00 00 08 */ b lbl_8004B4D4 lbl_8004B4D0: /* 8004B4D0 00048430 3B C0 FF FF */ li r30, -1 lbl_8004B4D4: /* 8004B4D4 00048434 2C 1E FF FF */ cmpwi r30, -1 /* 8004B4D8 00048438 40 82 FF 8C */ bne lbl_8004B464 /* 8004B4DC 0004843C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8004B4E0 00048440 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004B4E4 00048444 CB E1 00 20 */ lfd f31, 0x20(r1) /* 8004B4E8 00048448 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004B4EC 0004844C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004B4F0 00048450 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004B4F4 00048454 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004B4F8 00048458 7C 08 03 A6 */ mtlr r0 /* 8004B4FC 0004845C 38 21 00 30 */ addi r1, r1, 0x30 /* 8004B500 00048460 4E 80 00 20 */ blr .global nullsub_34 nullsub_34: /* 8004B504 00048464 4E 80 00 20 */ blr .global UpdateGameState__13CStateManagerFv UpdateGameState__13CStateManagerFv: /* 8004B508 00048468 4E 80 00 20 */ blr .global SwapOutAllPossibleMemory__13CStateManagerFv SwapOutAllPossibleMemory__13CStateManagerFv: /* 8004B50C 0004846C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B510 00048470 7C 08 02 A6 */ mflr r0 /* 8004B514 00048474 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B518 00048478 48 32 17 E5 */ bl sub_8036ccfc /* 8004B51C 0004847C 48 2F 91 ED */ bl WaitForAllDMAsToComplete__12CARAMManagerFv /* 8004B520 00048480 48 30 D0 19 */ bl UpdateAllDMAs__10CARAMTokenFv /* 8004B524 00048484 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B528 00048488 38 60 00 01 */ li r3, 1 /* 8004B52C 0004848C 7C 08 03 A6 */ mtlr r0 /* 8004B530 00048490 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B534 00048494 4E 80 00 20 */ blr .global MemoryAllocatorAllocationFailedCallback__13CStateManagerFPCvUi MemoryAllocatorAllocationFailedCallback__13CStateManagerFPCvUi: /* 8004B538 00048498 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B53C 0004849C 7C 08 02 A6 */ mflr r0 /* 8004B540 000484A0 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B544 000484A4 4B FF FF C9 */ bl SwapOutAllPossibleMemory__13CStateManagerFv /* 8004B548 000484A8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B54C 000484AC 7C 08 03 A6 */ mtlr r0 /* 8004B550 000484B0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B554 000484B4 4E 80 00 20 */ blr .global SwapOutTexturesToARAM__13CStateManagerFiUi SwapOutTexturesToARAM__13CStateManagerFiUi: /* 8004B558 000484B8 4E 80 00 20 */ blr .global FrameBegin__13CStateManagerFUi FrameBegin__13CStateManagerFUi: /* 8004B55C 000484BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B560 000484C0 7C 08 02 A6 */ mflr r0 /* 8004B564 000484C4 3C A0 00 18 */ lis r5, 0x18 /* 8004B568 000484C8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B56C 000484CC 90 83 08 D4 */ stw r4, 0x8d4(r3) /* 8004B570 000484D0 38 80 00 02 */ li r4, 2 /* 8004B574 000484D4 80 03 08 D4 */ lwz r0, 0x8d4(r3) /* 8004B578 000484D8 90 0D A8 70 */ stw r0, lbl_805A9430@sda21(r13) /* 8004B57C 000484DC 80 03 08 D4 */ lwz r0, 0x8d4(r3) /* 8004B580 000484E0 90 0D A8 68 */ stw r0, lbl_805A9428@sda21(r13) /* 8004B584 000484E4 4B FF FF D5 */ bl SwapOutTexturesToARAM__13CStateManagerFiUi /* 8004B588 000484E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B58C 000484EC 7C 08 03 A6 */ mtlr r0 /* 8004B590 000484F0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B594 000484F4 4E 80 00 20 */ blr .global InitializeState__13CStateManagerFUi7TAreaIdUi InitializeState__13CStateManagerFUi7TAreaIdUi: /* 8004B598 000484F8 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8004B59C 000484FC 7C 08 02 A6 */ mflr r0 /* 8004B5A0 00048500 90 01 00 A4 */ stw r0, 0xa4(r1) /* 8004B5A4 00048504 BF 41 00 88 */ stmw r26, 0x88(r1) /* 8004B5A8 00048508 7C 7F 1B 78 */ mr r31, r3 /* 8004B5AC 0004850C 7C 9A 23 78 */ mr r26, r4 /* 8004B5B0 00048510 7C BD 2B 78 */ mr r29, r5 /* 8004B5B4 00048514 38 1F 08 FC */ addi r0, r31, 0x8fc /* 8004B5B8 00048518 7C DC 33 78 */ mr r28, r6 /* 8004B5BC 0004851C 80 83 09 00 */ lwz r4, 0x900(r3) /* 8004B5C0 00048520 90 03 09 00 */ stw r0, 0x900(r3) /* 8004B5C4 00048524 7C 04 00 D0 */ neg r0, r4 /* 8004B5C8 00048528 7C 04 23 78 */ or r4, r0, r4 /* 8004B5CC 0004852C 80 03 0B 3C */ lwz r0, 0xb3c(r3) /* 8004B5D0 00048530 54 9E 0F FE */ srwi r30, r4, 0x1f /* 8004B5D4 00048534 2C 00 00 00 */ cmpwi r0, 0 /* 8004B5D8 00048538 40 82 00 64 */ bne lbl_8004B63C /* 8004B5DC 0004853C 48 00 04 4D */ bl CreateStandardGameObjects__13CStateManagerFv /* 8004B5E0 00048540 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004B5E4 00048544 38 60 01 1C */ li r3, 0x11c /* 8004B5E8 00048548 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004B5EC 0004854C 38 A0 00 00 */ li r5, 0 /* 8004B5F0 00048550 48 2C A2 7D */ bl __nw__FUlPCcPCc /* 8004B5F4 00048554 7C 7B 1B 79 */ or. r27, r3, r3 /* 8004B5F8 00048558 41 82 00 18 */ beq lbl_8004B610 /* 8004B5FC 0004855C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 8004B600 00048560 7F 46 D3 78 */ mr r6, r26 /* 8004B604 00048564 80 AD A0 60 */ lwz r5, gpResourceFactory@sda21(r13) /* 8004B608 00048568 48 00 D8 B5 */ bl __ct__6CWorldFR12IObjectStoreR11CResFactoryUi /* 8004B60C 0004856C 7C 7B 1B 78 */ mr r27, r3 lbl_8004B610: /* 8004B610 00048570 80 7F 08 50 */ lwz r3, 0x850(r31) /* 8004B614 00048574 28 03 00 00 */ cmplwi r3, 0 /* 8004B618 00048578 41 82 00 18 */ beq lbl_8004B630 /* 8004B61C 0004857C 81 83 00 00 */ lwz r12, 0(r3) /* 8004B620 00048580 38 80 00 01 */ li r4, 1 /* 8004B624 00048584 81 8C 00 08 */ lwz r12, 8(r12) /* 8004B628 00048588 7D 89 03 A6 */ mtctr r12 /* 8004B62C 0004858C 4E 80 04 21 */ bctrl lbl_8004B630: /* 8004B630 00048590 93 7F 08 50 */ stw r27, 0x850(r31) /* 8004B634 00048594 38 00 00 01 */ li r0, 1 /* 8004B638 00048598 90 1F 0B 3C */ stw r0, 0xb3c(r31) lbl_8004B63C: /* 8004B63C 0004859C 80 1F 0B 3C */ lwz r0, 0xb3c(r31) /* 8004B640 000485A0 2C 00 00 01 */ cmpwi r0, 1 /* 8004B644 000485A4 40 82 00 D8 */ bne lbl_8004B71C /* 8004B648 000485A8 80 1F 08 F8 */ lwz r0, 0x8f8(r31) /* 8004B64C 000485AC 28 00 00 00 */ cmplwi r0, 0 /* 8004B650 000485B0 41 82 00 0C */ beq lbl_8004B65C /* 8004B654 000485B4 38 60 00 01 */ li r3, 1 /* 8004B658 000485B8 48 00 00 3C */ b lbl_8004B694 lbl_8004B65C: /* 8004B65C 000485BC 88 1F 08 F4 */ lbz r0, 0x8f4(r31) /* 8004B660 000485C0 28 00 00 00 */ cmplwi r0, 0 /* 8004B664 000485C4 41 82 00 2C */ beq lbl_8004B690 /* 8004B668 000485C8 80 7F 08 F0 */ lwz r3, 0x8f0(r31) /* 8004B66C 000485CC 80 03 00 10 */ lwz r0, 0x10(r3) /* 8004B670 000485D0 28 00 00 00 */ cmplwi r0, 0 /* 8004B674 000485D4 41 82 00 1C */ beq lbl_8004B690 /* 8004B678 000485D8 38 7F 08 F0 */ addi r3, r31, 0x8f0 /* 8004B67C 000485DC 48 2F 57 91 */ bl GetObj__6CTokenFv /* 8004B680 000485E0 80 03 00 04 */ lwz r0, 4(r3) /* 8004B684 000485E4 38 60 00 01 */ li r3, 1 /* 8004B688 000485E8 90 1F 08 F8 */ stw r0, 0x8f8(r31) /* 8004B68C 000485EC 48 00 00 08 */ b lbl_8004B694 lbl_8004B690: /* 8004B690 000485F0 38 60 00 00 */ li r3, 0 lbl_8004B694: /* 8004B694 000485F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004B698 000485F8 41 82 03 7C */ beq lbl_8004BA14 /* 8004B69C 000485FC 80 1D 00 00 */ lwz r0, 0(r29) /* 8004B6A0 00048600 7F E4 FB 78 */ mr r4, r31 /* 8004B6A4 00048604 7F 86 E3 78 */ mr r6, r28 /* 8004B6A8 00048608 38 A1 00 24 */ addi r5, r1, 0x24 /* 8004B6AC 0004860C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004B6B0 00048610 80 7F 08 50 */ lwz r3, 0x850(r31) /* 8004B6B4 00048614 48 00 CC 75 */ bl CheckWorldComplete__6CWorldFP13CStateManager7TAreaIdUi /* 8004B6B8 00048618 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004B6BC 0004861C 41 82 03 58 */ beq lbl_8004BA14 /* 8004B6C0 00048620 80 7F 08 50 */ lwz r3, 0x850(r31) /* 8004B6C4 00048624 7F E5 FB 78 */ mr r5, r31 /* 8004B6C8 00048628 80 03 00 68 */ lwz r0, 0x68(r3) /* 8004B6CC 0004862C 90 1F 08 CC */ stw r0, 0x8cc(r31) /* 8004B6D0 00048630 80 FF 08 CC */ lwz r7, 0x8cc(r31) /* 8004B6D4 00048634 80 7F 08 50 */ lwz r3, 0x850(r31) /* 8004B6D8 00048638 54 E4 18 38 */ slwi r4, r7, 3 /* 8004B6DC 0004863C 90 E1 00 0C */ stw r7, 0xc(r1) /* 8004B6E0 00048640 80 C3 00 20 */ lwz r6, 0x20(r3) /* 8004B6E4 00048644 38 04 00 04 */ addi r0, r4, 4 /* 8004B6E8 00048648 90 E1 00 20 */ stw r7, 0x20(r1) /* 8004B6EC 0004864C 7F 66 00 2E */ lwzx r27, r6, r0 /* 8004B6F0 00048650 90 E1 00 1C */ stw r7, 0x1c(r1) /* 8004B6F4 00048654 7F 64 DB 78 */ mr r4, r27 /* 8004B6F8 00048658 48 00 C7 59 */ bl ScheduleAreaToLoad__6CWorldFP9CGameAreaR13CStateManager /* 8004B6FC 0004865C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004B700 00048660 41 82 00 14 */ beq lbl_8004B714 /* 8004B704 00048664 7F 63 DB 78 */ mr r3, r27 /* 8004B708 00048668 7F E4 FB 78 */ mr r4, r31 /* 8004B70C 0004866C 48 01 56 D9 */ bl StartStreamIn__9CGameAreaFR13CStateManager /* 8004B710 00048670 48 00 03 04 */ b lbl_8004BA14 lbl_8004B714: /* 8004B714 00048674 38 00 00 02 */ li r0, 2 /* 8004B718 00048678 90 1F 0B 3C */ stw r0, 0xb3c(r31) lbl_8004B71C: /* 8004B71C 0004867C 80 1F 08 CC */ lwz r0, 0x8cc(r31) /* 8004B720 00048680 7F E3 FB 78 */ mr r3, r31 /* 8004B724 00048684 38 81 00 18 */ addi r4, r1, 0x18 /* 8004B728 00048688 90 01 00 18 */ stw r0, 0x18(r1) /* 8004B72C 0004868C 48 00 09 A1 */ bl SetCurrentAreaId__13CStateManagerF7TAreaId /* 8004B730 00048690 80 1F 08 CC */ lwz r0, 0x8cc(r31) /* 8004B734 00048694 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 8004B738 00048698 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B73C 0004869C 48 18 82 71 */ bl CurrentWorldState__10CGameStateFv /* 8004B740 000486A0 38 81 00 14 */ addi r4, r1, 0x14 /* 8004B744 000486A4 48 18 96 09 */ bl SetAreaId__11CWorldStateF7TAreaId /* 8004B748 000486A8 80 7F 08 50 */ lwz r3, 0x850(r31) /* 8004B74C 000486AC 7F E5 FB 78 */ mr r5, r31 /* 8004B750 000486B0 38 9F 08 CC */ addi r4, r31, 0x8cc /* 8004B754 000486B4 38 C0 00 01 */ li r6, 1 /* 8004B758 000486B8 48 00 C4 55 */ bl TravelToArea__6CWorldFRC7TAreaIdR13CStateManagerb /* 8004B75C 000486BC 80 1F 08 CC */ lwz r0, 0x8cc(r31) /* 8004B760 000486C0 7F E3 FB 78 */ mr r3, r31 /* 8004B764 000486C4 38 81 00 10 */ addi r4, r1, 0x10 /* 8004B768 000486C8 90 01 00 10 */ stw r0, 0x10(r1) /* 8004B76C 000486CC 48 00 07 D9 */ bl UpdateRoomAcoustics__13CStateManagerF7TAreaId /* 8004B770 000486D0 83 7F 08 10 */ lwz r27, 0x810(r31) /* 8004B774 000486D4 AB 5B 20 08 */ lha r26, 0x2008(r27) /* 8004B778 000486D8 48 00 00 48 */ b lbl_8004B7C0 lbl_8004B77C: /* 8004B77C 000486DC A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004B780 000486E0 7F 63 DB 78 */ mr r3, r27 /* 8004B784 000486E4 7F 44 D3 78 */ mr r4, r26 /* 8004B788 000486E8 B0 01 00 08 */ sth r0, 8(r1) /* 8004B78C 000486EC 4B FC 45 89 */ bl __vc__11CObjectListFi /* 8004B790 000486F0 7C 64 1B 78 */ mr r4, r3 /* 8004B794 000486F4 7F E3 FB 78 */ mr r3, r31 /* 8004B798 000486F8 38 A1 00 08 */ addi r5, r1, 8 /* 8004B79C 000486FC 38 C0 00 24 */ li r6, 0x24 /* 8004B7A0 00048700 4B FF 87 31 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage /* 8004B7A4 00048704 2C 1A FF FF */ cmpwi r26, -1 /* 8004B7A8 00048708 41 82 00 14 */ beq lbl_8004B7BC /* 8004B7AC 0004870C 57 43 18 38 */ slwi r3, r26, 3 /* 8004B7B0 00048710 38 03 00 08 */ addi r0, r3, 8 /* 8004B7B4 00048714 7F 5B 02 AE */ lhax r26, r27, r0 /* 8004B7B8 00048718 48 00 00 08 */ b lbl_8004B7C0 lbl_8004B7BC: /* 8004B7BC 0004871C 3B 40 FF FF */ li r26, -1 lbl_8004B7C0: /* 8004B7C0 00048720 2C 1A FF FF */ cmpwi r26, -1 /* 8004B7C4 00048724 40 82 FF B8 */ bne lbl_8004B77C /* 8004B7C8 00048728 83 7F 08 10 */ lwz r27, 0x810(r31) /* 8004B7CC 0004872C AB 5B 20 08 */ lha r26, 0x2008(r27) /* 8004B7D0 00048730 48 00 02 00 */ b lbl_8004B9D0 lbl_8004B7D4: /* 8004B7D4 00048734 7F 63 DB 78 */ mr r3, r27 /* 8004B7D8 00048738 7F 44 D3 78 */ mr r4, r26 /* 8004B7DC 0004873C 4B FC 45 39 */ bl __vc__11CObjectListFi /* 8004B7E0 00048740 7C 64 1B 78 */ mr r4, r3 /* 8004B7E4 00048744 38 61 00 2C */ addi r3, r1, 0x2c /* 8004B7E8 00048748 48 05 C9 DD */ bl "__ct__31TCastToPtr<17CScriptSpawnPoint>FP7CEntity" /* 8004B7EC 0004874C 83 A3 00 04 */ lwz r29, 4(r3) /* 8004B7F0 00048750 28 1D 00 00 */ cmplwi r29, 0 /* 8004B7F4 00048754 41 82 01 C0 */ beq lbl_8004B9B4 /* 8004B7F8 00048758 88 1D 00 30 */ lbz r0, 0x30(r29) /* 8004B7FC 0004875C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004B800 00048760 41 82 01 B4 */ beq lbl_8004B9B4 /* 8004B804 00048764 88 1D 01 0C */ lbz r0, 0x10c(r29) /* 8004B808 00048768 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004B80C 0004876C 41 82 01 A8 */ beq lbl_8004B9B4 /* 8004B810 00048770 7F A3 EB 78 */ mr r3, r29 /* 8004B814 00048774 48 09 6D E1 */ bl GetTransform__17CScriptSpawnPointCFv /* 8004B818 00048778 C0 43 00 2C */ lfs f2, 0x2c(r3) /* 8004B81C 0004877C C0 23 00 1C */ lfs f1, 0x1c(r3) /* 8004B820 00048780 C0 03 00 0C */ lfs f0, 0xc(r3) /* 8004B824 00048784 7F A3 EB 78 */ mr r3, r29 /* 8004B828 00048788 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 8004B82C 0004878C D0 21 00 50 */ stfs f1, 0x50(r1) /* 8004B830 00048790 D0 41 00 54 */ stfs f2, 0x54(r1) /* 8004B834 00048794 48 09 6D C1 */ bl GetTransform__17CScriptSpawnPointCFv /* 8004B838 00048798 C0 63 00 24 */ lfs f3, 0x24(r3) /* 8004B83C 0004879C C0 43 00 14 */ lfs f2, 0x14(r3) /* 8004B840 000487A0 C0 23 00 04 */ lfs f1, 4(r3) /* 8004B844 000487A4 38 61 00 40 */ addi r3, r1, 0x40 /* 8004B848 000487A8 C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004B84C 000487AC D0 61 00 48 */ stfs f3, 0x48(r1) /* 8004B850 000487B0 D0 21 00 40 */ stfs f1, 0x40(r1) /* 8004B854 000487B4 D0 41 00 44 */ stfs f2, 0x44(r1) /* 8004B858 000487B8 D0 01 00 48 */ stfs f0, 0x48(r1) /* 8004B85C 000487BC 48 2C 8E 9D */ bl CanBeNormalized__9CVector3fCFv /* 8004B860 000487C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004B864 000487C4 41 82 00 60 */ beq lbl_8004B8C4 /* 8004B868 000487C8 C0 21 00 50 */ lfs f1, 0x50(r1) /* 8004B86C 000487CC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha /* 8004B870 000487D0 C0 01 00 44 */ lfs f0, 0x44(r1) /* 8004B874 000487D4 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l /* 8004B878 000487D8 C0 61 00 54 */ lfs f3, 0x54(r1) /* 8004B87C 000487DC 38 61 00 58 */ addi r3, r1, 0x58 /* 8004B880 000487E0 EC 81 00 2A */ fadds f4, f1, f0 /* 8004B884 000487E4 C0 41 00 48 */ lfs f2, 0x48(r1) /* 8004B888 000487E8 C0 21 00 4C */ lfs f1, 0x4c(r1) /* 8004B88C 000487EC 38 81 00 4C */ addi r4, r1, 0x4c /* 8004B890 000487F0 C0 01 00 40 */ lfs f0, 0x40(r1) /* 8004B894 000487F4 EC 43 10 2A */ fadds f2, f3, f2 /* 8004B898 000487F8 EC 01 00 2A */ fadds f0, f1, f0 /* 8004B89C 000487FC D0 81 00 38 */ stfs f4, 0x38(r1) /* 8004B8A0 00048800 38 A1 00 34 */ addi r5, r1, 0x34 /* 8004B8A4 00048804 D0 41 00 3C */ stfs f2, 0x3c(r1) /* 8004B8A8 00048808 D0 01 00 34 */ stfs f0, 0x34(r1) /* 8004B8AC 0004880C 48 2C 82 65 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 8004B8B0 00048810 80 7F 08 4C */ lwz r3, 0x84c(r31) /* 8004B8B4 00048814 7F E5 FB 78 */ mr r5, r31 /* 8004B8B8 00048818 38 81 00 58 */ addi r4, r1, 0x58 /* 8004B8BC 0004881C 38 C0 00 01 */ li r6, 1 /* 8004B8C0 00048820 48 23 97 DD */ bl Teleport__7CPlayerFRC12CTransform4fR13CStateManagerb lbl_8004B8C4: /* 8004B8C4 00048824 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 8004B8C8 00048828 88 03 02 28 */ lbz r0, 0x228(r3) /* 8004B8CC 0004882C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 8004B8D0 00048830 41 82 01 08 */ beq lbl_8004B9D8 /* 8004B8D4 00048834 38 80 00 00 */ li r4, 0 /* 8004B8D8 00048838 48 18 7F C5 */ bl SetDeferPowerupInit__10CGameStateFb /* 8004B8DC 0004883C 3B 80 00 00 */ li r28, 0 lbl_8004B8E0: /* 8004B8E0 00048840 80 BF 08 B8 */ lwz r5, 0x8b8(r31) /* 8004B8E4 00048844 7F A3 EB 78 */ mr r3, r29 /* 8004B8E8 00048848 93 81 00 28 */ stw r28, 0x28(r1) /* 8004B8EC 0004884C 38 81 00 28 */ addi r4, r1, 0x28 /* 8004B8F0 00048850 83 45 00 00 */ lwz r26, 0(r5) /* 8004B8F4 00048854 48 09 6C D5 */ bl GetPowerup__17CScriptSpawnPointCFRCQ212CPlayerState9EItemType /* 8004B8F8 00048858 7C 7B 1B 78 */ mr r27, r3 /* 8004B8FC 0004885C 7F 84 E3 78 */ mr r4, r28 /* 8004B900 00048860 7F 43 D3 78 */ mr r3, r26 /* 8004B904 00048864 48 04 61 95 */ bl GetPowerUp__12CPlayerStateFQ212CPlayerState9EItemType /* 8004B908 00048868 7C 03 D8 00 */ cmpw r3, r27 /* 8004B90C 0004886C 40 80 00 38 */ bge lbl_8004B944 /* 8004B910 00048870 80 BF 08 B8 */ lwz r5, 0x8b8(r31) /* 8004B914 00048874 7F A3 EB 78 */ mr r3, r29 /* 8004B918 00048878 38 81 00 28 */ addi r4, r1, 0x28 /* 8004B91C 0004887C 83 45 00 00 */ lwz r26, 0(r5) /* 8004B920 00048880 48 09 6C A9 */ bl GetPowerup__17CScriptSpawnPointCFRCQ212CPlayerState9EItemType /* 8004B924 00048884 7C 7B 1B 78 */ mr r27, r3 /* 8004B928 00048888 7F 84 E3 78 */ mr r4, r28 /* 8004B92C 0004888C 7F 43 D3 78 */ mr r3, r26 /* 8004B930 00048890 48 04 61 69 */ bl GetPowerUp__12CPlayerStateFQ212CPlayerState9EItemType /* 8004B934 00048894 7C A3 D8 50 */ subf r5, r3, r27 /* 8004B938 00048898 7F 84 E3 78 */ mr r4, r28 /* 8004B93C 0004889C 7F 43 D3 78 */ mr r3, r26 /* 8004B940 000488A0 48 04 64 29 */ bl InitializePowerUp__12CPlayerStateFQ212CPlayerState9EItemTypei lbl_8004B944: /* 8004B944 000488A4 80 BF 08 B8 */ lwz r5, 0x8b8(r31) /* 8004B948 000488A8 7F A3 EB 78 */ mr r3, r29 /* 8004B94C 000488AC 38 81 00 28 */ addi r4, r1, 0x28 /* 8004B950 000488B0 83 45 00 00 */ lwz r26, 0(r5) /* 8004B954 000488B4 48 09 6C 75 */ bl GetPowerup__17CScriptSpawnPointCFRCQ212CPlayerState9EItemType /* 8004B958 000488B8 80 81 00 28 */ lwz r4, 0x28(r1) /* 8004B95C 000488BC 7C 7B 1B 78 */ mr r27, r3 /* 8004B960 000488C0 7F 43 D3 78 */ mr r3, r26 /* 8004B964 000488C4 48 04 61 B9 */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType /* 8004B968 000488C8 7C 03 D8 00 */ cmpw r3, r27 /* 8004B96C 000488CC 40 80 00 38 */ bge lbl_8004B9A4 /* 8004B970 000488D0 80 BF 08 B8 */ lwz r5, 0x8b8(r31) /* 8004B974 000488D4 7F A3 EB 78 */ mr r3, r29 /* 8004B978 000488D8 38 81 00 28 */ addi r4, r1, 0x28 /* 8004B97C 000488DC 83 45 00 00 */ lwz r26, 0(r5) /* 8004B980 000488E0 48 09 6C 49 */ bl GetPowerup__17CScriptSpawnPointCFRCQ212CPlayerState9EItemType /* 8004B984 000488E4 80 81 00 28 */ lwz r4, 0x28(r1) /* 8004B988 000488E8 7C 7B 1B 78 */ mr r27, r3 /* 8004B98C 000488EC 7F 43 D3 78 */ mr r3, r26 /* 8004B990 000488F0 48 04 61 8D */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType /* 8004B994 000488F4 80 81 00 28 */ lwz r4, 0x28(r1) /* 8004B998 000488F8 7C A3 D8 50 */ subf r5, r3, r27 /* 8004B99C 000488FC 7F 43 D3 78 */ mr r3, r26 /* 8004B9A0 00048900 48 04 62 51 */ bl IncrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei lbl_8004B9A4: /* 8004B9A4 00048904 3B 9C 00 01 */ addi r28, r28, 1 /* 8004B9A8 00048908 2C 1C 00 29 */ cmpwi r28, 0x29 /* 8004B9AC 0004890C 41 80 FF 34 */ blt lbl_8004B8E0 /* 8004B9B0 00048910 48 00 00 28 */ b lbl_8004B9D8 lbl_8004B9B4: /* 8004B9B4 00048914 2C 1A FF FF */ cmpwi r26, -1 /* 8004B9B8 00048918 41 82 00 14 */ beq lbl_8004B9CC /* 8004B9BC 0004891C 57 43 18 38 */ slwi r3, r26, 3 /* 8004B9C0 00048920 38 03 00 08 */ addi r0, r3, 8 /* 8004B9C4 00048924 7F 5B 02 AE */ lhax r26, r27, r0 /* 8004B9C8 00048928 48 00 00 08 */ b lbl_8004B9D0 lbl_8004B9CC: /* 8004B9CC 0004892C 3B 40 FF FF */ li r26, -1 lbl_8004B9D0: /* 8004B9D0 00048930 2C 1A FF FF */ cmpwi r26, -1 /* 8004B9D4 00048934 40 82 FE 00 */ bne lbl_8004B7D4 lbl_8004B9D8: /* 8004B9D8 00048938 80 7F 08 4C */ lwz r3, 0x84c(r31) /* 8004B9DC 0004893C 7F E4 FB 78 */ mr r4, r31 /* 8004B9E0 00048940 4B FC 61 4D */ bl AsyncLoadSuit__7CPlayerFR13CStateManager /* 8004B9E4 00048944 80 7F 08 70 */ lwz r3, 0x870(r31) /* 8004B9E8 00048948 7F E4 FB 78 */ mr r4, r31 /* 8004B9EC 0004894C 4B FC 02 A5 */ bl ResetCameras__14CCameraManagerFR13CStateManager /* 8004B9F0 00048950 28 1E 00 00 */ cmplwi r30, 0 /* 8004B9F4 00048954 41 82 00 0C */ beq lbl_8004BA00 /* 8004B9F8 00048958 38 1F 08 FC */ addi r0, r31, 0x8fc /* 8004B9FC 0004895C 48 00 00 08 */ b lbl_8004BA04 lbl_8004BA00: /* 8004BA00 00048960 38 00 00 00 */ li r0, 0 lbl_8004BA04: /* 8004BA04 00048964 90 1F 09 00 */ stw r0, 0x900(r31) /* 8004BA08 00048968 7F E4 FB 78 */ mr r4, r31 /* 8004BA0C 0004896C 80 7F 08 80 */ lwz r3, 0x880(r31) /* 8004BA10 00048970 48 1C 6D BD */ bl AsyncLoadResources__13CEnvFXManagerFR13CStateManager lbl_8004BA14: /* 8004BA14 00048974 BB 41 00 88 */ lmw r26, 0x88(r1) /* 8004BA18 00048978 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 8004BA1C 0004897C 7C 08 03 A6 */ mtlr r0 /* 8004BA20 00048980 38 21 00 A0 */ addi r1, r1, 0xa0 /* 8004BA24 00048984 4E 80 00 20 */ blr .global CreateStandardGameObjects__13CStateManagerFv CreateStandardGameObjects__13CStateManagerFv: /* 8004BA28 00048988 94 21 FE 60 */ stwu r1, -0x1a0(r1) /* 8004BA2C 0004898C 7C 08 02 A6 */ mflr r0 /* 8004BA30 00048990 90 01 01 A4 */ stw r0, 0x1a4(r1) /* 8004BA34 00048994 DB E1 01 90 */ stfd f31, 0x190(r1) /* 8004BA38 00048998 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 /* 8004BA3C 0004899C DB C1 01 80 */ stfd f30, 0x180(r1) /* 8004BA40 000489A0 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 /* 8004BA44 000489A4 DB A1 01 70 */ stfd f29, 0x170(r1) /* 8004BA48 000489A8 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 /* 8004BA4C 000489AC 93 E1 01 6C */ stw r31, 0x16c(r1) /* 8004BA50 000489B0 93 C1 01 68 */ stw r30, 0x168(r1) /* 8004BA54 000489B4 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) /* 8004BA58 000489B8 7C 7E 1B 78 */ mr r30, r3 /* 8004BA5C 000489BC C0 02 85 68 */ lfs f0, lbl_805AA288@sda21(r2) /* 8004BA60 000489C0 38 61 00 9C */ addi r3, r1, 0x9c /* 8004BA64 000489C4 C0 46 02 70 */ lfs f2, 0x270(r6) /* 8004BA68 000489C8 38 81 00 84 */ addi r4, r1, 0x84 /* 8004BA6C 000489CC C3 E6 02 74 */ lfs f31, 0x274(r6) /* 8004BA70 000489D0 38 A1 00 78 */ addi r5, r1, 0x78 /* 8004BA74 000489D4 FC 60 10 50 */ fneg f3, f2 /* 8004BA78 000489D8 C3 C6 02 78 */ lfs f30, 0x278(r6) /* 8004BA7C 000489DC C0 26 02 6C */ lfs f1, 0x26c(r6) /* 8004BA80 000489E0 C3 A6 02 7C */ lfs f29, 0x27c(r6) /* 8004BA84 000489E4 D0 41 00 78 */ stfs f2, 0x78(r1) /* 8004BA88 000489E8 D0 41 00 7C */ stfs f2, 0x7c(r1) /* 8004BA8C 000489EC D0 21 00 80 */ stfs f1, 0x80(r1) /* 8004BA90 000489F0 D0 61 00 84 */ stfs f3, 0x84(r1) /* 8004BA94 000489F4 D0 61 00 88 */ stfs f3, 0x88(r1) /* 8004BA98 000489F8 D0 01 00 8C */ stfs f0, 0x8c(r1) /* 8004BA9C 000489FC 48 2E CA 6D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 8004BAA0 00048A00 7F C4 F3 78 */ mr r4, r30 /* 8004BAA4 00048A04 38 61 00 0C */ addi r3, r1, 0xc /* 8004BAA8 00048A08 48 00 16 35 */ bl AllocateUniqueId__13CStateManagerFv /* 8004BAAC 00048A0C 3C 60 80 5A */ lis r3, skZero3f@ha /* 8004BAB0 00048A10 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 8004BAB4 00048A14 38 83 66 A0 */ addi r4, r3, skZero3f@l /* 8004BAB8 00048A18 A0 01 00 0C */ lhz r0, 0xc(r1) /* 8004BABC 00048A1C C0 A4 00 00 */ lfs f5, 0(r4) /* 8004BAC0 00048A20 38 61 00 5C */ addi r3, r1, 0x5c /* 8004BAC4 00048A24 C0 84 00 04 */ lfs f4, 4(r4) /* 8004BAC8 00048A28 C0 64 00 08 */ lfs f3, 8(r4) /* 8004BACC 00048A2C C0 42 86 20 */ lfs f2, lbl_805AA340@sda21(r2) /* 8004BAD0 00048A30 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 8004BAD4 00048A34 B0 01 00 10 */ sth r0, 0x10(r1) /* 8004BAD8 00048A38 D0 A1 00 90 */ stfs f5, 0x90(r1) /* 8004BADC 00048A3C D0 81 00 94 */ stfs f4, 0x94(r1) /* 8004BAE0 00048A40 D0 61 00 98 */ stfs f3, 0x98(r1) /* 8004BAE4 00048A44 D0 41 00 14 */ stfs f2, 0x14(r1) /* 8004BAE8 00048A48 D0 21 00 5C */ stfs f1, 0x5c(r1) /* 8004BAEC 00048A4C D0 21 00 60 */ stfs f1, 0x60(r1) /* 8004BAF0 00048A50 D0 01 00 64 */ stfs f0, 0x64(r1) /* 8004BAF4 00048A54 48 2C 8E 05 */ bl Normalize__9CVector3fFv /* 8004BAF8 00048A58 38 61 00 68 */ addi r3, r1, 0x68 /* 8004BAFC 00048A5C 38 81 00 5C */ addi r4, r1, 0x5c /* 8004BB00 00048A60 38 A1 00 14 */ addi r5, r1, 0x14 /* 8004BB04 00048A64 48 2C 57 F1 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle /* 8004BB08 00048A68 38 61 00 E4 */ addi r3, r1, 0xe4 /* 8004BB0C 00048A6C 38 81 00 68 */ addi r4, r1, 0x68 /* 8004BB10 00048A70 48 2C 65 7D */ bl BuildTransform__11CQuaternionCFv /* 8004BB14 00048A74 38 61 01 38 */ addi r3, r1, 0x138 /* 8004BB18 00048A78 38 81 00 E4 */ addi r4, r1, 0xe4 /* 8004BB1C 00048A7C 48 2C 45 09 */ bl __ct__9CMatrix3fFRC9CMatrix3f /* 8004BB20 00048A80 C1 01 01 58 */ lfs f8, 0x158(r1) /* 8004BB24 00048A84 38 61 00 B4 */ addi r3, r1, 0xb4 /* 8004BB28 00048A88 C0 E1 01 4C */ lfs f7, 0x14c(r1) /* 8004BB2C 00048A8C 38 81 00 50 */ addi r4, r1, 0x50 /* 8004BB30 00048A90 C0 41 01 40 */ lfs f2, 0x140(r1) /* 8004BB34 00048A94 38 A1 00 44 */ addi r5, r1, 0x44 /* 8004BB38 00048A98 C0 C1 01 54 */ lfs f6, 0x154(r1) /* 8004BB3C 00048A9C 38 C1 00 38 */ addi r6, r1, 0x38 /* 8004BB40 00048AA0 C0 A1 01 48 */ lfs f5, 0x148(r1) /* 8004BB44 00048AA4 38 E1 00 90 */ addi r7, r1, 0x90 /* 8004BB48 00048AA8 C0 21 01 3C */ lfs f1, 0x13c(r1) /* 8004BB4C 00048AAC C0 81 01 50 */ lfs f4, 0x150(r1) /* 8004BB50 00048AB0 C0 61 01 44 */ lfs f3, 0x144(r1) /* 8004BB54 00048AB4 C0 01 01 38 */ lfs f0, 0x138(r1) /* 8004BB58 00048AB8 D0 41 00 38 */ stfs f2, 0x38(r1) /* 8004BB5C 00048ABC D0 E1 00 3C */ stfs f7, 0x3c(r1) /* 8004BB60 00048AC0 D1 01 00 40 */ stfs f8, 0x40(r1) /* 8004BB64 00048AC4 D0 21 00 44 */ stfs f1, 0x44(r1) /* 8004BB68 00048AC8 D0 A1 00 48 */ stfs f5, 0x48(r1) /* 8004BB6C 00048ACC D0 C1 00 4C */ stfs f6, 0x4c(r1) /* 8004BB70 00048AD0 D0 01 00 50 */ stfs f0, 0x50(r1) /* 8004BB74 00048AD4 D0 61 00 54 */ stfs f3, 0x54(r1) /* 8004BB78 00048AD8 D0 81 00 58 */ stfs f4, 0x58(r1) /* 8004BB7C 00048ADC 48 2C 72 E1 */ bl __ct__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f_0 /* 8004BB80 00048AE0 38 61 01 08 */ addi r3, r1, 0x108 /* 8004BB84 00048AE4 38 81 00 B4 */ addi r4, r1, 0xb4 /* 8004BB88 00048AE8 48 2C 6F ED */ bl __ct__12CTransform4fFRC12CTransform4f /* 8004BB8C 00048AEC 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004BB90 00048AF0 38 60 0A 38 */ li r3, 0xa38 /* 8004BB94 00048AF4 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004BB98 00048AF8 38 A0 00 00 */ li r5, 0 /* 8004BB9C 00048AFC 48 00 3B 59 */ bl "__nw__20TOneStatic<7CPlayer>FUlPCcPCc" /* 8004BBA0 00048B00 7C 7F 1B 79 */ or. r31, r3, r3 /* 8004BBA4 00048B04 41 82 00 F0 */ beq lbl_8004BC94 /* 8004BBA8 00048B08 38 00 00 00 */ li r0, 0 /* 8004BBAC 00048B0C 80 AD 82 64 */ lwz r5, lbl_805A6E24@sda21(r13) /* 8004BBB0 00048B10 90 01 00 1C */ stw r0, 0x1c(r1) /* 8004BBB4 00048B14 38 60 00 00 */ li r3, 0 /* 8004BBB8 00048B18 38 80 00 01 */ li r4, 1 /* 8004BBBC 00048B1C 90 01 00 18 */ stw r0, 0x18(r1) /* 8004BBC0 00048B20 48 33 E3 35 */ bl __shl2i /* 8004BBC4 00048B24 80 01 00 18 */ lwz r0, 0x18(r1) /* 8004BBC8 00048B28 80 C1 00 1C */ lwz r6, 0x1c(r1) /* 8004BBCC 00048B2C 7C 00 1B 78 */ or r0, r0, r3 /* 8004BBD0 00048B30 80 AD 82 68 */ lwz r5, lbl_805A6E28@sda21(r13) /* 8004BBD4 00048B34 7C C4 23 78 */ or r4, r6, r4 /* 8004BBD8 00048B38 90 01 00 18 */ stw r0, 0x18(r1) /* 8004BBDC 00048B3C 38 60 00 00 */ li r3, 0 /* 8004BBE0 00048B40 90 81 00 1C */ stw r4, 0x1c(r1) /* 8004BBE4 00048B44 38 80 00 01 */ li r4, 1 /* 8004BBE8 00048B48 48 33 E3 0D */ bl __shl2i /* 8004BBEC 00048B4C 80 01 00 18 */ lwz r0, 0x18(r1) /* 8004BBF0 00048B50 80 C1 00 1C */ lwz r6, 0x1c(r1) /* 8004BBF4 00048B54 7C 00 1B 78 */ or r0, r0, r3 /* 8004BBF8 00048B58 80 AD 82 6C */ lwz r5, lbl_805A6E2C@sda21(r13) /* 8004BBFC 00048B5C 7C C4 23 78 */ or r4, r6, r4 /* 8004BC00 00048B60 90 01 00 18 */ stw r0, 0x18(r1) /* 8004BC04 00048B64 38 60 00 00 */ li r3, 0 /* 8004BC08 00048B68 90 81 00 1C */ stw r4, 0x1c(r1) /* 8004BC0C 00048B6C 38 80 00 01 */ li r4, 1 /* 8004BC10 00048B70 48 33 E2 E5 */ bl __shl2i /* 8004BC14 00048B74 C0 02 86 24 */ lfs f0, lbl_805AA344@sda21(r2) /* 8004BC18 00048B78 FC 40 F8 90 */ fmr f2, f31 /* 8004BC1C 00048B7C 80 01 00 18 */ lwz r0, 0x18(r1) /* 8004BC20 00048B80 FC 60 F0 90 */ fmr f3, f30 /* 8004BC24 00048B84 D0 01 00 20 */ stfs f0, 0x20(r1) /* 8004BC28 00048B88 FC 80 E8 90 */ fmr f4, f29 /* 8004BC2C 00048B8C 80 A1 00 1C */ lwz r5, 0x1c(r1) /* 8004BC30 00048B90 D0 01 00 24 */ stfs f0, 0x24(r1) /* 8004BC34 00048B94 7C 00 1B 78 */ or r0, r0, r3 /* 8004BC38 00048B98 7C A6 23 78 */ or r6, r5, r4 /* 8004BC3C 00048B9C 81 81 00 20 */ lwz r12, 0x20(r1) /* 8004BC40 00048BA0 D0 01 00 28 */ stfs f0, 0x28(r1) /* 8004BC44 00048BA4 7F E3 FB 78 */ mr r3, r31 /* 8004BC48 00048BA8 81 61 00 24 */ lwz r11, 0x24(r1) /* 8004BC4C 00048BAC 38 81 00 08 */ addi r4, r1, 8 /* 8004BC50 00048BB0 81 41 00 28 */ lwz r10, 0x28(r1) /* 8004BC54 00048BB4 38 A1 01 08 */ addi r5, r1, 0x108 /* 8004BC58 00048BB8 90 C1 00 1C */ stw r6, 0x1c(r1) /* 8004BC5C 00048BBC 38 C1 00 9C */ addi r6, r1, 0x9c /* 8004BC60 00048BC0 80 ED A1 4C */ lwz r7, gpTweakPlayerRes@sda21(r13) /* 8004BC64 00048BC4 39 01 00 2C */ addi r8, r1, 0x2c /* 8004BC68 00048BC8 90 01 00 18 */ stw r0, 0x18(r1) /* 8004BC6C 00048BCC 39 21 00 18 */ addi r9, r1, 0x18 /* 8004BC70 00048BD0 A0 01 00 10 */ lhz r0, 0x10(r1) /* 8004BC74 00048BD4 91 81 00 2C */ stw r12, 0x2c(r1) /* 8004BC78 00048BD8 C0 22 86 28 */ lfs f1, lbl_805AA348@sda21(r2) /* 8004BC7C 00048BDC 91 61 00 30 */ stw r11, 0x30(r1) /* 8004BC80 00048BE0 91 41 00 34 */ stw r10, 0x34(r1) /* 8004BC84 00048BE4 80 E7 00 C4 */ lwz r7, 0xc4(r7) /* 8004BC88 00048BE8 B0 01 00 08 */ sth r0, 8(r1) /* 8004BC8C 00048BEC 4B FC E5 B1 */ bl __ct__7CPlayerF9TUniqueIdRC12CTransform4fRC6CAABoxUi9CVector3fffffRC13CMaterialList /* 8004BC90 00048BF0 7C 7F 1B 78 */ mr r31, r3 lbl_8004BC94: /* 8004BC94 00048BF4 93 FE 08 4C */ stw r31, 0x84c(r30) /* 8004BC98 00048BF8 7F C3 F3 78 */ mr r3, r30 /* 8004BC9C 00048BFC 80 9E 08 4C */ lwz r4, 0x84c(r30) /* 8004BCA0 00048C00 48 00 0E 75 */ bl AddObject__13CStateManagerFR7CEntity /* 8004BCA4 00048C04 80 7E 08 70 */ lwz r3, 0x870(r30) /* 8004BCA8 00048C08 7F C4 F3 78 */ mr r4, r30 /* 8004BCAC 00048C0C 4B FC 01 AD */ bl CreateStandardCameras__14CCameraManagerFR13CStateManager /* 8004BCB0 00048C10 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 /* 8004BCB4 00048C14 CB E1 01 90 */ lfd f31, 0x190(r1) /* 8004BCB8 00048C18 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 /* 8004BCBC 00048C1C CB C1 01 80 */ lfd f30, 0x180(r1) /* 8004BCC0 00048C20 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 /* 8004BCC4 00048C24 CB A1 01 70 */ lfd f29, 0x170(r1) /* 8004BCC8 00048C28 83 E1 01 6C */ lwz r31, 0x16c(r1) /* 8004BCCC 00048C2C 80 01 01 A4 */ lwz r0, 0x1a4(r1) /* 8004BCD0 00048C30 83 C1 01 68 */ lwz r30, 0x168(r1) /* 8004BCD4 00048C34 7C 08 03 A6 */ mtlr r0 /* 8004BCD8 00048C38 38 21 01 A0 */ addi r1, r1, 0x1a0 /* 8004BCDC 00048C3C 4E 80 00 20 */ blr .global RemoveObject__13CStateManagerF9TUniqueId RemoveObject__13CStateManagerF9TUniqueId: /* 8004BCE0 00048C40 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8004BCE4 00048C44 7C 08 02 A6 */ mflr r0 /* 8004BCE8 00048C48 90 01 00 74 */ stw r0, 0x74(r1) /* 8004BCEC 00048C4C BF 01 00 50 */ stmw r24, 0x50(r1) /* 8004BCF0 00048C50 7C 79 1B 78 */ mr r25, r3 /* 8004BCF4 00048C54 7C 9A 23 78 */ mr r26, r4 /* 8004BCF8 00048C58 3B 99 08 0C */ addi r28, r25, 0x80c /* 8004BCFC 00048C5C A0 04 00 00 */ lhz r0, 0(r4) /* 8004BD00 00048C60 38 81 00 10 */ addi r4, r1, 0x10 /* 8004BD04 00048C64 B0 01 00 10 */ sth r0, 0x10(r1) /* 8004BD08 00048C68 80 63 08 10 */ lwz r3, 0x810(r3) /* 8004BD0C 00048C6C 4B FC 40 91 */ bl GetValidObjectById__11CObjectListF9TUniqueId /* 8004BD10 00048C70 7C 7B 1B 79 */ or. r27, r3, r3 /* 8004BD14 00048C74 41 82 01 58 */ beq lbl_8004BE6C /* 8004BD18 00048C78 80 9B 00 0C */ lwz r4, 0xc(r27) /* 8004BD1C 00048C7C 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13) /* 8004BD20 00048C80 54 83 01 BE */ clrlwi r3, r4, 6 /* 8004BD24 00048C84 90 81 00 1C */ stw r4, 0x1c(r1) /* 8004BD28 00048C88 54 00 01 BE */ clrlwi r0, r0, 6 /* 8004BD2C 00048C8C 7C 03 00 40 */ cmplw r3, r0 /* 8004BD30 00048C90 41 82 00 CC */ beq lbl_8004BDFC /* 8004BD34 00048C94 38 61 00 38 */ addi r3, r1, 0x38 /* 8004BD38 00048C98 38 99 08 90 */ addi r4, r25, 0x890 /* 8004BD3C 00048C9C 38 A1 00 1C */ addi r5, r1, 0x1c /* 8004BD40 00048CA0 48 00 01 71 */ bl sub_8004beb0 /* 8004BD44 00048CA4 80 61 00 38 */ lwz r3, 0x38(r1) /* 8004BD48 00048CA8 3B B9 08 98 */ addi r29, r25, 0x898 /* 8004BD4C 00048CAC 80 01 00 3C */ lwz r0, 0x3c(r1) /* 8004BD50 00048CB0 90 61 00 30 */ stw r3, 0x30(r1) /* 8004BD54 00048CB4 83 E1 00 40 */ lwz r31, 0x40(r1) /* 8004BD58 00048CB8 90 01 00 34 */ stw r0, 0x34(r1) /* 8004BD5C 00048CBC 83 C1 00 44 */ lwz r30, 0x44(r1) /* 8004BD60 00048CC0 48 00 00 74 */ b lbl_8004BDD4 lbl_8004BD64: /* 8004BD64 00048CC4 A0 64 00 14 */ lhz r3, 0x14(r4) /* 8004BD68 00048CC8 A0 1A 00 00 */ lhz r0, 0(r26) /* 8004BD6C 00048CCC 7C 03 00 40 */ cmplw r3, r0 /* 8004BD70 00048CD0 40 82 00 58 */ bne lbl_8004BDC8 /* 8004BD74 00048CD4 83 01 00 30 */ lwz r24, 0x30(r1) /* 8004BD78 00048CD8 80 61 00 34 */ lwz r3, 0x34(r1) /* 8004BD7C 00048CDC 93 01 00 28 */ stw r24, 0x28(r1) /* 8004BD80 00048CE0 7F 04 C3 78 */ mr r4, r24 /* 8004BD84 00048CE4 90 61 00 2C */ stw r3, 0x2c(r1) /* 8004BD88 00048CE8 48 2F 08 59 */ bl rbtree_traverse_forward__4rstlFPCvPv /* 8004BD8C 00048CEC 90 61 00 28 */ stw r3, 0x28(r1) /* 8004BD90 00048CF0 7F A3 EB 78 */ mr r3, r29 /* 8004BD94 00048CF4 7F 04 C3 78 */ mr r4, r24 /* 8004BD98 00048CF8 48 2F 08 E5 */ bl rbtree_rebalance_for_erase__4rstlFPvPv /* 8004BD9C 00048CFC 28 03 00 00 */ cmplwi r3, 0 /* 8004BDA0 00048D00 41 82 00 08 */ beq lbl_8004BDA8 /* 8004BDA4 00048D04 48 2C 9B 8D */ bl Free__7CMemoryFPCv lbl_8004BDA8: /* 8004BDA8 00048D08 80 99 08 94 */ lwz r4, 0x894(r25) /* 8004BDAC 00048D0C 80 61 00 28 */ lwz r3, 0x28(r1) /* 8004BDB0 00048D10 80 01 00 2C */ lwz r0, 0x2c(r1) /* 8004BDB4 00048D14 38 84 FF FF */ addi r4, r4, -1 /* 8004BDB8 00048D18 90 99 08 94 */ stw r4, 0x894(r25) /* 8004BDBC 00048D1C 90 61 00 30 */ stw r3, 0x30(r1) /* 8004BDC0 00048D20 90 01 00 34 */ stw r0, 0x34(r1) /* 8004BDC4 00048D24 48 00 00 10 */ b lbl_8004BDD4 lbl_8004BDC8: /* 8004BDC8 00048D28 80 61 00 34 */ lwz r3, 0x34(r1) /* 8004BDCC 00048D2C 48 2F 08 15 */ bl rbtree_traverse_forward__4rstlFPCvPv /* 8004BDD0 00048D30 90 61 00 30 */ stw r3, 0x30(r1) lbl_8004BDD4: /* 8004BDD4 00048D34 80 81 00 30 */ lwz r4, 0x30(r1) /* 8004BDD8 00048D38 38 60 00 00 */ li r3, 0 /* 8004BDDC 00048D3C 7C 04 F8 40 */ cmplw r4, r31 /* 8004BDE0 00048D40 40 82 00 10 */ bne lbl_8004BDF0 /* 8004BDE4 00048D44 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004BDE8 00048D48 7C 00 F0 40 */ cmplw r0, r30 /* 8004BDEC 00048D4C 41 82 00 08 */ beq lbl_8004BDF4 lbl_8004BDF0: /* 8004BDF0 00048D50 38 60 00 01 */ li r3, 1 lbl_8004BDF4: /* 8004BDF4 00048D54 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004BDF8 00048D58 40 82 FF 6C */ bne lbl_8004BD64 lbl_8004BDFC: /* 8004BDFC 00048D5C 80 BB 00 04 */ lwz r5, 4(r27) /* 8004BE00 00048D60 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8004BE04 00048D64 90 A1 00 18 */ stw r5, 0x18(r1) /* 8004BE08 00048D68 7C 05 00 00 */ cmpw r5, r0 /* 8004BE0C 00048D6C 41 82 00 40 */ beq lbl_8004BE4C /* 8004BE10 00048D70 80 99 08 50 */ lwz r4, 0x850(r25) /* 8004BE14 00048D74 54 A3 18 38 */ slwi r3, r5, 3 /* 8004BE18 00048D78 38 03 00 04 */ addi r0, r3, 4 /* 8004BE1C 00048D7C 90 A1 00 14 */ stw r5, 0x14(r1) /* 8004BE20 00048D80 80 64 00 20 */ lwz r3, 0x20(r4) /* 8004BE24 00048D84 7C 63 00 2E */ lwzx r3, r3, r0 /* 8004BE28 00048D88 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 8004BE2C 00048D8C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004BE30 00048D90 41 82 00 1C */ beq lbl_8004BE4C /* 8004BE34 00048D94 A0 1A 00 00 */ lhz r0, 0(r26) /* 8004BE38 00048D98 38 81 00 0C */ addi r4, r1, 0xc /* 8004BE3C 00048D9C B0 01 00 0C */ sth r0, 0xc(r1) /* 8004BE40 00048DA0 80 63 01 2C */ lwz r3, 0x12c(r3) /* 8004BE44 00048DA4 80 63 10 C0 */ lwz r3, 0x10c0(r3) /* 8004BE48 00048DA8 4B FC 40 5D */ bl RemoveObject__11CObjectListF9TUniqueId lbl_8004BE4C: /* 8004BE4C 00048DAC 7F 64 DB 78 */ mr r4, r27 /* 8004BE50 00048DB0 38 61 00 20 */ addi r3, r1, 0x20 /* 8004BE54 00048DB4 48 06 3E 3D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 8004BE58 00048DB8 80 83 00 04 */ lwz r4, 4(r3) /* 8004BE5C 00048DBC 28 04 00 00 */ cmplwi r4, 0 /* 8004BE60 00048DC0 41 82 00 0C */ beq lbl_8004BE6C /* 8004BE64 00048DC4 80 79 08 74 */ lwz r3, 0x874(r25) /* 8004BE68 00048DC8 48 0F E0 C5 */ bl Remove__Q22SL18CSortedListManagerFPC6CActor lbl_8004BE6C: /* 8004BE6C 00048DCC 3B 00 00 00 */ li r24, 0 /* 8004BE70 00048DD0 48 00 00 20 */ b lbl_8004BE90 lbl_8004BE74: /* 8004BE74 00048DD4 A0 1A 00 00 */ lhz r0, 0(r26) /* 8004BE78 00048DD8 38 81 00 08 */ addi r4, r1, 8 /* 8004BE7C 00048DDC B0 01 00 08 */ sth r0, 8(r1) /* 8004BE80 00048DE0 80 7C 00 04 */ lwz r3, 4(r28) /* 8004BE84 00048DE4 4B FC 40 21 */ bl RemoveObject__11CObjectListF9TUniqueId /* 8004BE88 00048DE8 3B 9C 00 08 */ addi r28, r28, 8 /* 8004BE8C 00048DEC 3B 18 00 01 */ addi r24, r24, 1 lbl_8004BE90: /* 8004BE90 00048DF0 80 19 08 08 */ lwz r0, 0x808(r25) /* 8004BE94 00048DF4 7C 18 00 00 */ cmpw r24, r0 /* 8004BE98 00048DF8 41 80 FF DC */ blt lbl_8004BE74 /* 8004BE9C 00048DFC BB 01 00 50 */ lmw r24, 0x50(r1) /* 8004BEA0 00048E00 80 01 00 74 */ lwz r0, 0x74(r1) /* 8004BEA4 00048E04 7C 08 03 A6 */ mtlr r0 /* 8004BEA8 00048E08 38 21 00 70 */ addi r1, r1, 0x70 /* 8004BEAC 00048E0C 4E 80 00 20 */ blr .global sub_8004beb0 sub_8004beb0: /* 8004BEB0 00048E10 81 44 00 10 */ lwz r10, 0x10(r4) /* 8004BEB4 00048E14 38 E0 00 00 */ li r7, 0 /* 8004BEB8 00048E18 7D 48 53 78 */ mr r8, r10 /* 8004BEBC 00048E1C 48 00 00 2C */ b lbl_8004BEE8 lbl_8004BEC0: /* 8004BEC0 00048E20 80 C5 00 00 */ lwz r6, 0(r5) /* 8004BEC4 00048E24 80 08 00 10 */ lwz r0, 0x10(r8) /* 8004BEC8 00048E28 54 C6 01 BE */ clrlwi r6, r6, 6 /* 8004BECC 00048E2C 54 00 01 BE */ clrlwi r0, r0, 6 /* 8004BED0 00048E30 7C 06 00 40 */ cmplw r6, r0 /* 8004BED4 00048E34 40 80 00 10 */ bge lbl_8004BEE4 /* 8004BED8 00048E38 7D 07 43 78 */ mr r7, r8 /* 8004BEDC 00048E3C 81 08 00 00 */ lwz r8, 0(r8) /* 8004BEE0 00048E40 48 00 00 08 */ b lbl_8004BEE8 lbl_8004BEE4: /* 8004BEE4 00048E44 81 08 00 04 */ lwz r8, 4(r8) lbl_8004BEE8: /* 8004BEE8 00048E48 28 08 00 00 */ cmplwi r8, 0 /* 8004BEEC 00048E4C 40 82 FF D4 */ bne lbl_8004BEC0 /* 8004BEF0 00048E50 39 24 00 08 */ addi r9, r4, 8 /* 8004BEF4 00048E54 39 00 00 00 */ li r8, 0 /* 8004BEF8 00048E58 48 00 00 2C */ b lbl_8004BF24 lbl_8004BEFC: /* 8004BEFC 00048E5C 80 CA 00 10 */ lwz r6, 0x10(r10) /* 8004BF00 00048E60 80 05 00 00 */ lwz r0, 0(r5) /* 8004BF04 00048E64 54 C6 01 BE */ clrlwi r6, r6, 6 /* 8004BF08 00048E68 54 00 01 BE */ clrlwi r0, r0, 6 /* 8004BF0C 00048E6C 7C 06 00 40 */ cmplw r6, r0 /* 8004BF10 00048E70 41 80 00 10 */ blt lbl_8004BF20 /* 8004BF14 00048E74 7D 48 53 78 */ mr r8, r10 /* 8004BF18 00048E78 81 4A 00 00 */ lwz r10, 0(r10) /* 8004BF1C 00048E7C 48 00 00 08 */ b lbl_8004BF24 lbl_8004BF20: /* 8004BF20 00048E80 81 4A 00 04 */ lwz r10, 4(r10) lbl_8004BF24: /* 8004BF24 00048E84 28 0A 00 00 */ cmplwi r10, 0 /* 8004BF28 00048E88 40 82 FF D4 */ bne lbl_8004BEFC /* 8004BF2C 00048E8C 91 03 00 00 */ stw r8, 0(r3) /* 8004BF30 00048E90 38 04 00 08 */ addi r0, r4, 8 /* 8004BF34 00048E94 90 03 00 04 */ stw r0, 4(r3) /* 8004BF38 00048E98 90 E3 00 08 */ stw r7, 8(r3) /* 8004BF3C 00048E9C 91 23 00 0C */ stw r9, 0xc(r3) /* 8004BF40 00048EA0 4E 80 00 20 */ blr .global UpdateRoomAcoustics__13CStateManagerF7TAreaId UpdateRoomAcoustics__13CStateManagerF7TAreaId: /* 8004BF44 00048EA4 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8004BF48 00048EA8 7C 08 02 A6 */ mflr r0 /* 8004BF4C 00048EAC 90 01 00 74 */ stw r0, 0x74(r1) /* 8004BF50 00048EB0 38 00 00 00 */ li r0, 0 /* 8004BF54 00048EB4 BF 61 00 5C */ stmw r27, 0x5c(r1) /* 8004BF58 00048EB8 7C 7B 1B 78 */ mr r27, r3 /* 8004BF5C 00048EBC 7C 9C 23 78 */ mr r28, r4 /* 8004BF60 00048EC0 3B C1 00 14 */ addi r30, r1, 0x14 /* 8004BF64 00048EC4 90 01 00 10 */ stw r0, 0x10(r1) /* 8004BF68 00048EC8 83 E3 08 10 */ lwz r31, 0x810(r3) /* 8004BF6C 00048ECC AB BF 20 08 */ lha r29, 0x2008(r31) /* 8004BF70 00048ED0 48 00 00 84 */ b lbl_8004BFF4 lbl_8004BF74: /* 8004BF74 00048ED4 7F E3 FB 78 */ mr r3, r31 /* 8004BF78 00048ED8 7F A4 EB 78 */ mr r4, r29 /* 8004BF7C 00048EDC 4B FC 3D 99 */ bl __vc__11CObjectListFi /* 8004BF80 00048EE0 7C 60 1B 78 */ mr r0, r3 /* 8004BF84 00048EE4 38 61 00 08 */ addi r3, r1, 8 /* 8004BF88 00048EE8 7C 04 03 78 */ mr r4, r0 /* 8004BF8C 00048EEC 48 05 C8 61 */ bl "__ct__34TCastToPtr<20CScriptRoomAcoustics>FP7CEntity" /* 8004BF90 00048EF0 80 83 00 04 */ lwz r4, 4(r3) /* 8004BF94 00048EF4 28 04 00 00 */ cmplwi r4, 0 /* 8004BF98 00048EF8 41 82 00 40 */ beq lbl_8004BFD8 /* 8004BF9C 00048EFC 80 64 00 04 */ lwz r3, 4(r4) /* 8004BFA0 00048F00 80 1C 00 00 */ lwz r0, 0(r28) /* 8004BFA4 00048F04 7C 03 00 00 */ cmpw r3, r0 /* 8004BFA8 00048F08 40 82 00 30 */ bne lbl_8004BFD8 /* 8004BFAC 00048F0C 88 04 00 30 */ lbz r0, 0x30(r4) /* 8004BFB0 00048F10 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004BFB4 00048F14 41 82 00 24 */ beq lbl_8004BFD8 /* 8004BFB8 00048F18 80 01 00 10 */ lwz r0, 0x10(r1) /* 8004BFBC 00048F1C 54 00 10 3A */ slwi r0, r0, 2 /* 8004BFC0 00048F20 7C 7E 02 15 */ add. r3, r30, r0 /* 8004BFC4 00048F24 41 82 00 08 */ beq lbl_8004BFCC /* 8004BFC8 00048F28 90 83 00 00 */ stw r4, 0(r3) lbl_8004BFCC: /* 8004BFCC 00048F2C 80 61 00 10 */ lwz r3, 0x10(r1) /* 8004BFD0 00048F30 38 03 00 01 */ addi r0, r3, 1 /* 8004BFD4 00048F34 90 01 00 10 */ stw r0, 0x10(r1) lbl_8004BFD8: /* 8004BFD8 00048F38 2C 1D FF FF */ cmpwi r29, -1 /* 8004BFDC 00048F3C 41 82 00 14 */ beq lbl_8004BFF0 /* 8004BFE0 00048F40 57 A3 18 38 */ slwi r3, r29, 3 /* 8004BFE4 00048F44 38 03 00 08 */ addi r0, r3, 8 /* 8004BFE8 00048F48 7F BF 02 AE */ lhax r29, r31, r0 /* 8004BFEC 00048F4C 48 00 00 08 */ b lbl_8004BFF4 lbl_8004BFF0: /* 8004BFF0 00048F50 3B A0 FF FF */ li r29, -1 lbl_8004BFF4: /* 8004BFF4 00048F54 2C 1D FF FF */ cmpwi r29, -1 /* 8004BFF8 00048F58 41 82 00 10 */ beq lbl_8004C008 /* 8004BFFC 00048F5C 80 01 00 10 */ lwz r0, 0x10(r1) /* 8004C000 00048F60 2C 00 00 0A */ cmpwi r0, 0xa /* 8004C004 00048F64 41 80 FF 70 */ blt lbl_8004BF74 lbl_8004C008: /* 8004C008 00048F68 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004C00C 00048F6C 2C 1C 00 00 */ cmpwi r28, 0 /* 8004C010 00048F70 40 81 00 50 */ ble lbl_8004C060 /* 8004C014 00048F74 80 7B 09 00 */ lwz r3, 0x900(r27) /* 8004C018 00048F78 48 2C 64 C5 */ bl Float__9CRandom16Fv /* 8004C01C 00048F7C 6F 83 80 00 */ xoris r3, r28, 0x8000 /* 8004C020 00048F80 3C 00 43 30 */ lis r0, 0x4330 /* 8004C024 00048F84 90 61 00 44 */ stw r3, 0x44(r1) /* 8004C028 00048F88 C8 62 85 A8 */ lfd f3, lbl_805AA2C8@sda21(r2) /* 8004C02C 00048F8C 90 01 00 40 */ stw r0, 0x40(r1) /* 8004C030 00048F90 C0 02 86 2C */ lfs f0, lbl_805AA34C@sda21(r2) /* 8004C034 00048F94 C8 41 00 40 */ lfd f2, 0x40(r1) /* 8004C038 00048F98 EC 42 18 28 */ fsubs f2, f2, f3 /* 8004C03C 00048F9C EC 21 00 B2 */ fmuls f1, f1, f2 /* 8004C040 00048FA0 EC 00 00 72 */ fmuls f0, f0, f1 /* 8004C044 00048FA4 FC 00 00 1E */ fctiwz f0, f0 /* 8004C048 00048FA8 D8 01 00 48 */ stfd f0, 0x48(r1) /* 8004C04C 00048FAC 80 01 00 4C */ lwz r0, 0x4c(r1) /* 8004C050 00048FB0 54 00 10 3A */ slwi r0, r0, 2 /* 8004C054 00048FB4 7C 7E 00 2E */ lwzx r3, r30, r0 /* 8004C058 00048FB8 48 15 1D 3D */ bl EnableAuxCallbacks__20CScriptRoomAcousticsFv /* 8004C05C 00048FBC 48 00 00 08 */ b lbl_8004C064 lbl_8004C060: /* 8004C060 00048FC0 48 15 1D 05 */ bl DisableAuxCallbacks__20CScriptRoomAcousticsFv lbl_8004C064: /* 8004C064 00048FC4 80 A1 00 10 */ lwz r5, 0x10(r1) /* 8004C068 00048FC8 38 60 00 00 */ li r3, 0 /* 8004C06C 00048FCC 2C 05 00 00 */ cmpwi r5, 0 /* 8004C070 00048FD0 40 81 00 40 */ ble lbl_8004C0B0 /* 8004C074 00048FD4 2C 05 00 08 */ cmpwi r5, 8 /* 8004C078 00048FD8 38 85 FF F8 */ addi r4, r5, -8 /* 8004C07C 00048FDC 40 81 00 20 */ ble lbl_8004C09C /* 8004C080 00048FE0 38 04 00 07 */ addi r0, r4, 7 /* 8004C084 00048FE4 54 00 E8 FE */ srwi r0, r0, 3 /* 8004C088 00048FE8 7C 09 03 A6 */ mtctr r0 /* 8004C08C 00048FEC 2C 04 00 00 */ cmpwi r4, 0 /* 8004C090 00048FF0 40 81 00 0C */ ble lbl_8004C09C lbl_8004C094: /* 8004C094 00048FF4 38 63 00 08 */ addi r3, r3, 8 /* 8004C098 00048FF8 42 00 FF FC */ bdnz lbl_8004C094 lbl_8004C09C: /* 8004C09C 00048FFC 7C 03 28 50 */ subf r0, r3, r5 /* 8004C0A0 00049000 7C 09 03 A6 */ mtctr r0 /* 8004C0A4 00049004 7C 03 28 00 */ cmpw r3, r5 /* 8004C0A8 00049008 40 80 00 08 */ bge lbl_8004C0B0 lbl_8004C0AC: /* 8004C0AC 0004900C 42 00 00 00 */ bdnz lbl_8004C0AC lbl_8004C0B0: /* 8004C0B0 00049010 BB 61 00 5C */ lmw r27, 0x5c(r1) /* 8004C0B4 00049014 38 00 00 00 */ li r0, 0 /* 8004C0B8 00049018 90 01 00 10 */ stw r0, 0x10(r1) /* 8004C0BC 0004901C 80 01 00 74 */ lwz r0, 0x74(r1) /* 8004C0C0 00049020 7C 08 03 A6 */ mtlr r0 /* 8004C0C4 00049024 38 21 00 70 */ addi r1, r1, 0x70 /* 8004C0C8 00049028 4E 80 00 20 */ blr .global SetCurrentAreaId__13CStateManagerF7TAreaId SetCurrentAreaId__13CStateManagerF7TAreaId: /* 8004C0CC 0004902C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004C0D0 00049030 7C 08 02 A6 */ mflr r0 /* 8004C0D4 00049034 90 01 00 24 */ stw r0, 0x24(r1) /* 8004C0D8 00049038 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004C0DC 0004903C 7C 7F 1B 78 */ mr r31, r3 /* 8004C0E0 00049040 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004C0E4 00049044 7C 9E 23 78 */ mr r30, r4 /* 8004C0E8 00049048 80 83 08 CC */ lwz r4, 0x8cc(r3) /* 8004C0EC 0004904C 80 1E 00 00 */ lwz r0, 0(r30) /* 8004C0F0 00049050 7C 04 00 00 */ cmpw r4, r0 /* 8004C0F4 00049054 41 82 00 20 */ beq lbl_8004C114 /* 8004C0F8 00049058 90 9F 08 D0 */ stw r4, 0x8d0(r31) /* 8004C0FC 0004905C 38 81 00 10 */ addi r4, r1, 0x10 /* 8004C100 00049060 80 1E 00 00 */ lwz r0, 0(r30) /* 8004C104 00049064 90 01 00 10 */ stw r0, 0x10(r1) /* 8004C108 00049068 4B FF FE 3D */ bl UpdateRoomAcoustics__13CStateManagerF7TAreaId /* 8004C10C 0004906C 80 1E 00 00 */ lwz r0, 0(r30) /* 8004C110 00049070 90 1F 08 CC */ stw r0, 0x8cc(r31) lbl_8004C114: /* 8004C114 00049074 80 7E 00 00 */ lwz r3, 0(r30) /* 8004C118 00049078 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8004C11C 0004907C 7C 03 00 00 */ cmpw r3, r0 /* 8004C120 00049080 41 82 00 5C */ beq lbl_8004C17C /* 8004C124 00049084 90 61 00 0C */ stw r3, 0xc(r1) /* 8004C128 00049088 38 81 00 0C */ addi r4, r1, 0xc /* 8004C12C 0004908C 80 7F 08 C0 */ lwz r3, 0x8c0(r31) /* 8004C130 00049090 80 63 00 00 */ lwz r3, 0(r3) /* 8004C134 00049094 48 11 BC 4D */ bl IsAreaVisited__13CMapWorldInfoCF7TAreaId /* 8004C138 00049098 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004C13C 0004909C 40 82 00 40 */ bne lbl_8004C17C /* 8004C140 000490A0 80 1E 00 00 */ lwz r0, 0(r30) /* 8004C144 000490A4 38 81 00 08 */ addi r4, r1, 8 /* 8004C148 000490A8 38 A0 00 01 */ li r5, 1 /* 8004C14C 000490AC 90 01 00 08 */ stw r0, 8(r1) /* 8004C150 000490B0 80 7F 08 C0 */ lwz r3, 0x8c0(r31) /* 8004C154 000490B4 80 63 00 00 */ lwz r3, 0(r3) /* 8004C158 000490B8 48 11 C4 61 */ bl SetAreaVisited__13CMapWorldInfoF7TAreaIdb /* 8004C15C 000490BC 80 7F 08 C0 */ lwz r3, 0x8c0(r31) /* 8004C160 000490C0 83 DF 08 50 */ lwz r30, 0x850(r31) /* 8004C164 000490C4 83 E3 00 00 */ lwz r31, 0(r3) /* 8004C168 000490C8 7F C3 F3 78 */ mr r3, r30 /* 8004C16C 000490CC 48 00 B5 31 */ bl GetMapWorld__6CWorldCFv /* 8004C170 000490D0 7F E4 FB 78 */ mr r4, r31 /* 8004C174 000490D4 7F C5 F3 78 */ mr r5, r30 /* 8004C178 000490D8 48 05 36 E5 */ bl RecalculateWorldSphere__9CMapWorldCFRC13CMapWorldInfoRC6IWorld lbl_8004C17C: /* 8004C17C 000490DC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004C180 000490E0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004C184 000490E4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004C188 000490E8 7C 08 03 A6 */ mtlr r0 /* 8004C18C 000490EC 38 21 00 20 */ addi r1, r1, 0x20 /* 8004C190 000490F0 4E 80 00 20 */ blr .global BringOutYourDead__13CStateManagerFv BringOutYourDead__13CStateManagerFv: /* 8004C194 000490F4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004C198 000490F8 7C 08 02 A6 */ mflr r0 /* 8004C19C 000490FC 90 01 00 34 */ stw r0, 0x34(r1) /* 8004C1A0 00049100 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 8004C1A4 00049104 7C 7B 1B 78 */ mr r27, r3 /* 8004C1A8 00049108 83 C3 08 58 */ lwz r30, 0x858(r3) /* 8004C1AC 0004910C 48 00 00 84 */ b lbl_8004C230 lbl_8004C1B0: /* 8004C1B0 00049110 3B FE 00 08 */ addi r31, r30, 8 /* 8004C1B4 00049114 3B BF 00 04 */ addi r29, r31, 4 /* 8004C1B8 00049118 48 00 00 5C */ b lbl_8004C214 lbl_8004C1BC: /* 8004C1BC 0004911C A0 1D 00 00 */ lhz r0, 0(r29) /* 8004C1C0 00049120 38 81 00 0C */ addi r4, r1, 0xc /* 8004C1C4 00049124 B0 01 00 0C */ sth r0, 0xc(r1) /* 8004C1C8 00049128 B0 01 00 10 */ sth r0, 0x10(r1) /* 8004C1CC 0004912C 80 7B 08 10 */ lwz r3, 0x810(r27) /* 8004C1D0 00049130 4B FC 3B CD */ bl GetValidObjectById__11CObjectListF9TUniqueId /* 8004C1D4 00049134 A0 01 00 10 */ lhz r0, 0x10(r1) /* 8004C1D8 00049138 7C 7C 1B 78 */ mr r28, r3 /* 8004C1DC 0004913C 7F 63 DB 78 */ mr r3, r27 /* 8004C1E0 00049140 38 81 00 08 */ addi r4, r1, 8 /* 8004C1E4 00049144 B0 01 00 08 */ sth r0, 8(r1) /* 8004C1E8 00049148 4B FF FA F9 */ bl RemoveObject__13CStateManagerF9TUniqueId /* 8004C1EC 0004914C 28 1C 00 00 */ cmplwi r28, 0 /* 8004C1F0 00049150 41 82 00 20 */ beq lbl_8004C210 /* 8004C1F4 00049154 41 82 00 1C */ beq lbl_8004C210 /* 8004C1F8 00049158 7F 83 E3 78 */ mr r3, r28 /* 8004C1FC 0004915C 38 80 00 01 */ li r4, 1 /* 8004C200 00049160 81 9C 00 00 */ lwz r12, 0(r28) /* 8004C204 00049164 81 8C 00 08 */ lwz r12, 8(r12) /* 8004C208 00049168 7D 89 03 A6 */ mtctr r12 /* 8004C20C 0004916C 4E 80 04 21 */ bctrl lbl_8004C210: /* 8004C210 00049170 3B BD 00 02 */ addi r29, r29, 2 lbl_8004C214: /* 8004C214 00049174 80 1F 00 00 */ lwz r0, 0(r31) /* 8004C218 00049178 54 00 08 3C */ slwi r0, r0, 1 /* 8004C21C 0004917C 7C 7F 02 14 */ add r3, r31, r0 /* 8004C220 00049180 38 03 00 04 */ addi r0, r3, 4 /* 8004C224 00049184 7C 1D 00 40 */ cmplw r29, r0 /* 8004C228 00049188 40 82 FF 94 */ bne lbl_8004C1BC /* 8004C22C 0004918C 83 DE 00 04 */ lwz r30, 4(r30) lbl_8004C230: /* 8004C230 00049190 83 FB 08 5C */ lwz r31, 0x85c(r27) /* 8004C234 00049194 7C 1E F8 40 */ cmplw r30, r31 /* 8004C238 00049198 40 82 FF 78 */ bne lbl_8004C1B0 /* 8004C23C 0004919C 80 9B 08 58 */ lwz r4, 0x858(r27) /* 8004C240 000491A0 48 00 00 10 */ b lbl_8004C250 lbl_8004C244: /* 8004C244 000491A4 38 7B 08 54 */ addi r3, r27, 0x854 /* 8004C248 000491A8 48 00 43 65 */ bl sub_800505ac /* 8004C24C 000491AC 7C 64 1B 78 */ mr r4, r3 lbl_8004C250: /* 8004C250 000491B0 7C 04 F8 40 */ cmplw r4, r31 /* 8004C254 000491B4 40 82 FF F0 */ bne lbl_8004C244 /* 8004C258 000491B8 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 8004C25C 000491BC 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004C260 000491C0 7C 08 03 A6 */ mtlr r0 /* 8004C264 000491C4 38 21 00 30 */ addi r1, r1, 0x30 /* 8004C268 000491C8 4E 80 00 20 */ blr .global FreeScriptObject__13CStateManagerF9TUniqueId FreeScriptObject__13CStateManagerF9TUniqueId: /* 8004C26C 000491CC 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 8004C270 000491D0 7C 08 02 A6 */ mflr r0 /* 8004C274 000491D4 90 01 00 B4 */ stw r0, 0xb4(r1) /* 8004C278 000491D8 93 E1 00 AC */ stw r31, 0xac(r1) /* 8004C27C 000491DC 93 C1 00 A8 */ stw r30, 0xa8(r1) /* 8004C280 000491E0 7C 9E 23 78 */ mr r30, r4 /* 8004C284 000491E4 93 A1 00 A4 */ stw r29, 0xa4(r1) /* 8004C288 000491E8 7C 7D 1B 78 */ mr r29, r3 /* 8004C28C 000491EC A0 04 00 00 */ lhz r0, 0(r4) /* 8004C290 000491F0 38 81 00 0C */ addi r4, r1, 0xc /* 8004C294 000491F4 B0 01 00 0C */ sth r0, 0xc(r1) /* 8004C298 000491F8 48 00 02 DD */ bl ObjectById__13CStateManagerF9TUniqueId /* 8004C29C 000491FC 7C 7F 1B 79 */ or. r31, r3, r3 /* 8004C2A0 00049200 41 82 01 B0 */ beq lbl_8004C450 /* 8004C2A4 00049204 88 1F 00 30 */ lbz r0, 0x30(r31) /* 8004C2A8 00049208 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 8004C2AC 0004920C 40 82 01 A4 */ bne lbl_8004C450 /* 8004C2B0 00049210 88 1F 00 30 */ lbz r0, 0x30(r31) /* 8004C2B4 00049214 38 60 00 01 */ li r3, 1 /* 8004C2B8 00049218 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 8004C2BC 0004921C 98 1F 00 30 */ stb r0, 0x30(r31) /* 8004C2C0 00049220 80 1D 08 68 */ lwz r0, 0x868(r29) /* 8004C2C4 00049224 2C 00 00 00 */ cmpwi r0, 0 /* 8004C2C8 00049228 40 82 00 70 */ bne lbl_8004C338 /* 8004C2CC 0004922C 38 00 00 00 */ li r0, 0 /* 8004C2D0 00049230 38 7D 08 54 */ addi r3, r29, 0x854 /* 8004C2D4 00049234 90 01 00 5C */ stw r0, 0x5c(r1) /* 8004C2D8 00049238 38 81 00 5C */ addi r4, r1, 0x5c /* 8004C2DC 0004923C 48 00 01 91 */ bl sub_8004c46c /* 8004C2E0 00049240 80 A1 00 5C */ lwz r5, 0x5c(r1) /* 8004C2E4 00049244 38 60 00 00 */ li r3, 0 /* 8004C2E8 00049248 2C 05 00 00 */ cmpwi r5, 0 /* 8004C2EC 0004924C 40 81 00 40 */ ble lbl_8004C32C /* 8004C2F0 00049250 2C 05 00 08 */ cmpwi r5, 8 /* 8004C2F4 00049254 38 85 FF F8 */ addi r4, r5, -8 /* 8004C2F8 00049258 40 81 00 20 */ ble lbl_8004C318 /* 8004C2FC 0004925C 38 04 00 07 */ addi r0, r4, 7 /* 8004C300 00049260 54 00 E8 FE */ srwi r0, r0, 3 /* 8004C304 00049264 7C 09 03 A6 */ mtctr r0 /* 8004C308 00049268 2C 04 00 00 */ cmpwi r4, 0 /* 8004C30C 0004926C 40 81 00 0C */ ble lbl_8004C318 lbl_8004C310: /* 8004C310 00049270 38 63 00 08 */ addi r3, r3, 8 /* 8004C314 00049274 42 00 FF FC */ bdnz lbl_8004C310 lbl_8004C318: /* 8004C318 00049278 7C 03 28 50 */ subf r0, r3, r5 /* 8004C31C 0004927C 7C 09 03 A6 */ mtctr r0 /* 8004C320 00049280 7C 03 28 00 */ cmpw r3, r5 /* 8004C324 00049284 40 80 00 08 */ bge lbl_8004C32C lbl_8004C328: /* 8004C328 00049288 42 00 00 00 */ bdnz lbl_8004C328 lbl_8004C32C: /* 8004C32C 0004928C 38 00 00 00 */ li r0, 0 /* 8004C330 00049290 90 01 00 5C */ stw r0, 0x5c(r1) /* 8004C334 00049294 48 00 00 80 */ b lbl_8004C3B4 lbl_8004C338: /* 8004C338 00049298 80 7D 08 5C */ lwz r3, 0x85c(r29) /* 8004C33C 0004929C 80 63 00 00 */ lwz r3, 0(r3) /* 8004C340 000492A0 80 03 00 08 */ lwz r0, 8(r3) /* 8004C344 000492A4 2C 00 00 20 */ cmpwi r0, 0x20 /* 8004C348 000492A8 40 82 00 6C */ bne lbl_8004C3B4 /* 8004C34C 000492AC 38 00 00 00 */ li r0, 0 /* 8004C350 000492B0 38 7D 08 54 */ addi r3, r29, 0x854 /* 8004C354 000492B4 90 01 00 18 */ stw r0, 0x18(r1) /* 8004C358 000492B8 38 81 00 18 */ addi r4, r1, 0x18 /* 8004C35C 000492BC 48 00 01 11 */ bl sub_8004c46c /* 8004C360 000492C0 80 A1 00 18 */ lwz r5, 0x18(r1) /* 8004C364 000492C4 38 60 00 00 */ li r3, 0 /* 8004C368 000492C8 2C 05 00 00 */ cmpwi r5, 0 /* 8004C36C 000492CC 40 81 00 40 */ ble lbl_8004C3AC /* 8004C370 000492D0 2C 05 00 08 */ cmpwi r5, 8 /* 8004C374 000492D4 38 85 FF F8 */ addi r4, r5, -8 /* 8004C378 000492D8 40 81 00 20 */ ble lbl_8004C398 /* 8004C37C 000492DC 38 04 00 07 */ addi r0, r4, 7 /* 8004C380 000492E0 54 00 E8 FE */ srwi r0, r0, 3 /* 8004C384 000492E4 7C 09 03 A6 */ mtctr r0 /* 8004C388 000492E8 2C 04 00 00 */ cmpwi r4, 0 /* 8004C38C 000492EC 40 81 00 0C */ ble lbl_8004C398 lbl_8004C390: /* 8004C390 000492F0 38 63 00 08 */ addi r3, r3, 8 /* 8004C394 000492F4 42 00 FF FC */ bdnz lbl_8004C390 lbl_8004C398: /* 8004C398 000492F8 7C 03 28 50 */ subf r0, r3, r5 /* 8004C39C 000492FC 7C 09 03 A6 */ mtctr r0 /* 8004C3A0 00049300 7C 03 28 00 */ cmpw r3, r5 /* 8004C3A4 00049304 40 80 00 08 */ bge lbl_8004C3AC lbl_8004C3A8: /* 8004C3A8 00049308 42 00 00 00 */ bdnz lbl_8004C3A8 lbl_8004C3AC: /* 8004C3AC 0004930C 38 00 00 00 */ li r0, 0 /* 8004C3B0 00049310 90 01 00 18 */ stw r0, 0x18(r1) lbl_8004C3B4: /* 8004C3B4 00049314 80 7D 08 5C */ lwz r3, 0x85c(r29) /* 8004C3B8 00049318 80 63 00 00 */ lwz r3, 0(r3) /* 8004C3BC 0004931C 38 E3 00 08 */ addi r7, r3, 8 /* 8004C3C0 00049320 80 03 00 08 */ lwz r0, 8(r3) /* 8004C3C4 00049324 54 00 08 3C */ slwi r0, r0, 1 /* 8004C3C8 00049328 7C 67 02 14 */ add r3, r7, r0 /* 8004C3CC 0004932C 34 63 00 04 */ addic. r3, r3, 4 /* 8004C3D0 00049330 41 82 00 0C */ beq lbl_8004C3DC /* 8004C3D4 00049334 A0 1E 00 00 */ lhz r0, 0(r30) /* 8004C3D8 00049338 B0 03 00 00 */ sth r0, 0(r3) lbl_8004C3DC: /* 8004C3DC 0004933C 80 87 00 00 */ lwz r4, 0(r7) /* 8004C3E0 00049340 7F E3 FB 78 */ mr r3, r31 /* 8004C3E4 00049344 7F A6 EB 78 */ mr r6, r29 /* 8004C3E8 00049348 38 A1 00 08 */ addi r5, r1, 8 /* 8004C3EC 0004934C 38 04 00 01 */ addi r0, r4, 1 /* 8004C3F0 00049350 38 80 00 22 */ li r4, 0x22 /* 8004C3F4 00049354 90 07 00 00 */ stw r0, 0(r7) /* 8004C3F8 00049358 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004C3FC 0004935C B0 01 00 08 */ sth r0, 8(r1) /* 8004C400 00049360 81 9F 00 00 */ lwz r12, 0(r31) /* 8004C404 00049364 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004C408 00049368 7D 89 03 A6 */ mtctr r12 /* 8004C40C 0004936C 4E 80 04 21 */ bctrl /* 8004C410 00049370 88 1F 00 30 */ lbz r0, 0x30(r31) /* 8004C414 00049374 38 60 00 01 */ li r3, 1 /* 8004C418 00049378 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a /* 8004C41C 0004937C 7F E4 FB 78 */ mr r4, r31 /* 8004C420 00049380 98 1F 00 30 */ stb r0, 0x30(r31) /* 8004C424 00049384 38 61 00 10 */ addi r3, r1, 0x10 /* 8004C428 00049388 48 06 38 69 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 8004C42C 0004938C 83 C3 00 04 */ lwz r30, 4(r3) /* 8004C430 00049390 28 1E 00 00 */ cmplwi r30, 0 /* 8004C434 00049394 41 82 00 1C */ beq lbl_8004C450 /* 8004C438 00049398 80 7D 08 74 */ lwz r3, 0x874(r29) /* 8004C43C 0004939C 7F C4 F3 78 */ mr r4, r30 /* 8004C440 000493A0 48 0F DA ED */ bl Remove__Q22SL18CSortedListManagerFPC6CActor /* 8004C444 000493A4 7F C3 F3 78 */ mr r3, r30 /* 8004C448 000493A8 38 80 00 00 */ li r4, 0 /* 8004C44C 000493AC 48 00 7F 95 */ bl SetUseInSortedLists__6CActorFb lbl_8004C450: /* 8004C450 000493B0 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 8004C454 000493B4 83 E1 00 AC */ lwz r31, 0xac(r1) /* 8004C458 000493B8 83 C1 00 A8 */ lwz r30, 0xa8(r1) /* 8004C45C 000493BC 83 A1 00 A4 */ lwz r29, 0xa4(r1) /* 8004C460 000493C0 7C 08 03 A6 */ mtlr r0 /* 8004C464 000493C4 38 21 00 B0 */ addi r1, r1, 0xb0 /* 8004C468 000493C8 4E 80 00 20 */ blr .global sub_8004c46c sub_8004c46c: /* 8004C46C 000493CC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C470 000493D0 7C 08 02 A6 */ mflr r0 /* 8004C474 000493D4 7C 85 23 78 */ mr r5, r4 /* 8004C478 000493D8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C47C 000493DC 80 83 00 08 */ lwz r4, 8(r3) /* 8004C480 000493E0 48 00 00 15 */ bl sub_8004c494 /* 8004C484 000493E4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C488 000493E8 7C 08 03 A6 */ mtlr r0 /* 8004C48C 000493EC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C490 000493F0 4E 80 00 20 */ blr .global sub_8004c494 sub_8004c494: /* 8004C494 000493F4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004C498 000493F8 7C 08 02 A6 */ mflr r0 /* 8004C49C 000493FC 90 01 00 24 */ stw r0, 0x24(r1) /* 8004C4A0 00049400 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004C4A4 00049404 7C 7F 1B 78 */ mr r31, r3 /* 8004C4A8 00049408 38 60 00 4C */ li r3, 0x4c /* 8004C4AC 0004940C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004C4B0 00049410 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004C4B4 00049414 7C BD 2B 78 */ mr r29, r5 /* 8004C4B8 00049418 38 A0 00 00 */ li r5, 0 /* 8004C4BC 0004941C 93 81 00 10 */ stw r28, 0x10(r1) /* 8004C4C0 00049420 7C 9C 23 78 */ mr r28, r4 /* 8004C4C4 00049424 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004C4C8 00049428 83 DC 00 00 */ lwz r30, 0(r28) /* 8004C4CC 0004942C 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004C4D0 00049430 48 2C 93 49 */ bl __nwa__FUlPCcPCc /* 8004C4D4 00049434 28 03 00 00 */ cmplwi r3, 0 /* 8004C4D8 00049438 41 82 00 0C */ beq lbl_8004C4E4 /* 8004C4DC 0004943C 93 C3 00 00 */ stw r30, 0(r3) /* 8004C4E0 00049440 93 83 00 04 */ stw r28, 4(r3) lbl_8004C4E4: /* 8004C4E4 00049444 34 83 00 08 */ addic. r4, r3, 8 /* 8004C4E8 00049448 41 82 00 40 */ beq lbl_8004C528 /* 8004C4EC 0004944C 80 1D 00 00 */ lwz r0, 0(r29) /* 8004C4F0 00049450 38 DD 00 04 */ addi r6, r29, 4 /* 8004C4F4 00049454 38 A4 00 04 */ addi r5, r4, 4 /* 8004C4F8 00049458 90 04 00 00 */ stw r0, 0(r4) /* 8004C4FC 0004945C 80 04 00 00 */ lwz r0, 0(r4) /* 8004C500 00049460 7C 09 03 A6 */ mtctr r0 /* 8004C504 00049464 2C 00 00 00 */ cmpwi r0, 0 /* 8004C508 00049468 40 81 00 20 */ ble lbl_8004C528 lbl_8004C50C: /* 8004C50C 0004946C 28 05 00 00 */ cmplwi r5, 0 /* 8004C510 00049470 41 82 00 0C */ beq lbl_8004C51C /* 8004C514 00049474 A0 06 00 00 */ lhz r0, 0(r6) /* 8004C518 00049478 B0 05 00 00 */ sth r0, 0(r5) lbl_8004C51C: /* 8004C51C 0004947C 38 A5 00 02 */ addi r5, r5, 2 /* 8004C520 00049480 38 C6 00 02 */ addi r6, r6, 2 /* 8004C524 00049484 42 00 FF E8 */ bdnz lbl_8004C50C lbl_8004C528: /* 8004C528 00049488 80 1F 00 04 */ lwz r0, 4(r31) /* 8004C52C 0004948C 7C 1C 00 40 */ cmplw r28, r0 /* 8004C530 00049490 40 82 00 08 */ bne lbl_8004C538 /* 8004C534 00049494 90 7F 00 04 */ stw r3, 4(r31) lbl_8004C538: /* 8004C538 00049498 80 83 00 00 */ lwz r4, 0(r3) /* 8004C53C 0004949C 90 64 00 04 */ stw r3, 4(r4) /* 8004C540 000494A0 80 83 00 04 */ lwz r4, 4(r3) /* 8004C544 000494A4 90 64 00 00 */ stw r3, 0(r4) /* 8004C548 000494A8 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8004C54C 000494AC 38 04 00 01 */ addi r0, r4, 1 /* 8004C550 000494B0 90 1F 00 14 */ stw r0, 0x14(r31) /* 8004C554 000494B4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004C558 000494B8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004C55C 000494BC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004C560 000494C0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004C564 000494C4 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004C568 000494C8 7C 08 03 A6 */ mtlr r0 /* 8004C56C 000494CC 38 21 00 20 */ addi r1, r1, 0x20 /* 8004C570 000494D0 4E 80 00 20 */ blr .global ObjectById__13CStateManagerF9TUniqueId ObjectById__13CStateManagerF9TUniqueId: /* 8004C574 000494D4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C578 000494D8 7C 08 02 A6 */ mflr r0 /* 8004C57C 000494DC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C580 000494E0 A0 04 00 00 */ lhz r0, 0(r4) /* 8004C584 000494E4 38 81 00 08 */ addi r4, r1, 8 /* 8004C588 000494E8 B0 01 00 08 */ sth r0, 8(r1) /* 8004C58C 000494EC 80 63 08 10 */ lwz r3, 0x810(r3) /* 8004C590 000494F0 4B FC 38 B9 */ bl GetObjectById__11CObjectListF9TUniqueId /* 8004C594 000494F4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C598 000494F8 7C 08 03 A6 */ mtlr r0 /* 8004C59C 000494FC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C5A0 00049500 4E 80 00 20 */ blr .global GetObjectById__13CStateManagerCF9TUniqueId GetObjectById__13CStateManagerCF9TUniqueId: /* 8004C5A4 00049504 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C5A8 00049508 7C 08 02 A6 */ mflr r0 /* 8004C5AC 0004950C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C5B0 00049510 A0 04 00 00 */ lhz r0, 0(r4) /* 8004C5B4 00049514 38 81 00 08 */ addi r4, r1, 8 /* 8004C5B8 00049518 80 63 08 10 */ lwz r3, 0x810(r3) /* 8004C5BC 0004951C B0 01 00 08 */ sth r0, 8(r1) /* 8004C5C0 00049520 4B FC 38 2D */ bl GetObjectById__11CObjectListCF9TUniqueId /* 8004C5C4 00049524 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C5C8 00049528 7C 08 03 A6 */ mtlr r0 /* 8004C5CC 0004952C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C5D0 00049530 4E 80 00 20 */ blr .global AreaUnloaded__13CStateManagerF7TAreaId AreaUnloaded__13CStateManagerF7TAreaId: /* 8004C5D4 00049534 4E 80 00 20 */ blr .global PrepareAreaUnload__13CStateManagerF7TAreaId PrepareAreaUnload__13CStateManagerF7TAreaId: /* 8004C5D8 00049538 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004C5DC 0004953C 7C 08 02 A6 */ mflr r0 /* 8004C5E0 00049540 90 01 00 34 */ stw r0, 0x34(r1) /* 8004C5E4 00049544 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 8004C5E8 00049548 7C 7B 1B 78 */ mr r27, r3 /* 8004C5EC 0004954C 7C 9C 23 78 */ mr r28, r4 /* 8004C5F0 00049550 83 E3 08 10 */ lwz r31, 0x810(r3) /* 8004C5F4 00049554 AB DF 20 08 */ lha r30, 0x2008(r31) /* 8004C5F8 00049558 48 00 00 70 */ b lbl_8004C668 lbl_8004C5FC: /* 8004C5FC 0004955C 7F E3 FB 78 */ mr r3, r31 /* 8004C600 00049560 7F C4 F3 78 */ mr r4, r30 /* 8004C604 00049564 4B FC 37 11 */ bl __vc__11CObjectListFi /* 8004C608 00049568 7C 64 1B 78 */ mr r4, r3 /* 8004C60C 0004956C 38 61 00 10 */ addi r3, r1, 0x10 /* 8004C610 00049570 48 05 DA E1 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" /* 8004C614 00049574 83 A3 00 04 */ lwz r29, 4(r3) /* 8004C618 00049578 28 1D 00 00 */ cmplwi r29, 0 /* 8004C61C 0004957C 41 82 00 30 */ beq lbl_8004C64C /* 8004C620 00049580 80 1C 00 00 */ lwz r0, 0(r28) /* 8004C624 00049584 7F A3 EB 78 */ mr r3, r29 /* 8004C628 00049588 7F 64 DB 78 */ mr r4, r27 /* 8004C62C 0004958C 38 A1 00 0C */ addi r5, r1, 0xc /* 8004C630 00049590 90 01 00 0C */ stw r0, 0xc(r1) /* 8004C634 00049594 48 03 1B 91 */ bl IsConnectedToArea__11CScriptDoorCFRC13CStateManager7TAreaId /* 8004C638 00049598 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004C63C 0004959C 41 82 00 10 */ beq lbl_8004C64C /* 8004C640 000495A0 7F A3 EB 78 */ mr r3, r29 /* 8004C644 000495A4 7F 64 DB 78 */ mr r4, r27 /* 8004C648 000495A8 48 03 1A 75 */ bl ForceClosed__11CScriptDoorFR13CStateManager lbl_8004C64C: /* 8004C64C 000495AC 2C 1E FF FF */ cmpwi r30, -1 /* 8004C650 000495B0 41 82 00 14 */ beq lbl_8004C664 /* 8004C654 000495B4 57 C3 18 38 */ slwi r3, r30, 3 /* 8004C658 000495B8 38 03 00 08 */ addi r0, r3, 8 /* 8004C65C 000495BC 7F DF 02 AE */ lhax r30, r31, r0 /* 8004C660 000495C0 48 00 00 08 */ b lbl_8004C668 lbl_8004C664: /* 8004C664 000495C4 3B C0 FF FF */ li r30, -1 lbl_8004C668: /* 8004C668 000495C8 2C 1E FF FF */ cmpwi r30, -1 /* 8004C66C 000495CC 40 82 FF 90 */ bne lbl_8004C5FC /* 8004C670 000495D0 80 1C 00 00 */ lwz r0, 0(r28) /* 8004C674 000495D4 7F 63 DB 78 */ mr r3, r27 /* 8004C678 000495D8 38 81 00 08 */ addi r4, r1, 8 /* 8004C67C 000495DC 90 01 00 08 */ stw r0, 8(r1) /* 8004C680 000495E0 4B FF B5 B1 */ bl FreeScriptObjects__13CStateManagerF7TAreaId /* 8004C684 000495E4 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 8004C688 000495E8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004C68C 000495EC 7C 08 03 A6 */ mtlr r0 /* 8004C690 000495F0 38 21 00 30 */ addi r1, r1, 0x30 /* 8004C694 000495F4 4E 80 00 20 */ blr .global AreaLoaded__13CStateManagerF7TAreaId AreaLoaded__13CStateManagerF7TAreaId: /* 8004C698 000495F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C69C 000495FC 7C 08 02 A6 */ mflr r0 /* 8004C6A0 00049600 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C6A4 00049604 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C6A8 00049608 7C 7F 1B 78 */ mr r31, r3 /* 8004C6AC 0004960C 7F E5 FB 78 */ mr r5, r31 /* 8004C6B0 00049610 80 63 08 BC */ lwz r3, 0x8bc(r3) /* 8004C6B4 00049614 80 63 00 00 */ lwz r3, 0(r3) /* 8004C6B8 00049618 48 09 54 B1 */ bl SendMsgs__14CScriptMailboxFRC7TAreaIdR13CStateManager /* 8004C6BC 0004961C 80 7F 08 80 */ lwz r3, 0x880(r31) /* 8004C6C0 00049620 48 1C 37 55 */ bl AreaLoaded__13CEnvFxManagerFv /* 8004C6C4 00049624 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C6C8 00049628 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C6CC 0004962C 7C 08 03 A6 */ mtlr r0 /* 8004C6D0 00049630 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C6D4 00049634 4E 80 00 20 */ blr .global "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor": /* 8004C6D8 00049638 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C6DC 0004963C 7C 08 02 A6 */ mflr r0 /* 8004C6E0 00049640 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C6E4 00049644 80 63 08 74 */ lwz r3, 0x874(r3) /* 8004C6E8 00049648 48 0F CE ED */ bl "BuildNearList__Q22SL18CSortedListManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" /* 8004C6EC 0004964C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C6F0 00049650 7C 08 03 A6 */ mtlr r0 /* 8004C6F4 00049654 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C6F8 00049658 4E 80 00 20 */ blr .global "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox": /* 8004C6FC 0004965C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C700 00049660 7C 08 02 A6 */ mflr r0 /* 8004C704 00049664 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C708 00049668 80 63 08 74 */ lwz r3, 0x874(r3) /* 8004C70C 0004966C 48 0F D0 25 */ bl "BuildNearList__Q22SL18CSortedListManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" /* 8004C710 00049670 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C714 00049674 7C 08 03 A6 */ mtlr r0 /* 8004C718 00049678 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C71C 0004967C 4E 80 00 20 */ blr .global "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor": /* 8004C720 00049680 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C724 00049684 7C 08 02 A6 */ mflr r0 /* 8004C728 00049688 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C72C 0004968C 80 63 08 74 */ lwz r3, 0x874(r3) /* 8004C730 00049690 48 0F D0 DD */ bl "BuildNearList__Q22SL18CSortedListManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" /* 8004C734 00049694 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C738 00049698 7C 08 03 A6 */ mtlr r0 /* 8004C73C 0004969C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C740 000496A0 4E 80 00 20 */ blr .global UpdateActorInSortedLists__13CStateManagerFR6CActor UpdateActorInSortedLists__13CStateManagerFR6CActor: /* 8004C744 000496A4 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8004C748 000496A8 7C 08 02 A6 */ mflr r0 /* 8004C74C 000496AC 90 01 00 54 */ stw r0, 0x54(r1) /* 8004C750 000496B0 93 E1 00 4C */ stw r31, 0x4c(r1) /* 8004C754 000496B4 7C 9F 23 78 */ mr r31, r4 /* 8004C758 000496B8 93 C1 00 48 */ stw r30, 0x48(r1) /* 8004C75C 000496BC 7C 7E 1B 78 */ mr r30, r3 /* 8004C760 000496C0 7F E3 FB 78 */ mr r3, r31 /* 8004C764 000496C4 48 00 7C 8D */ bl GetUseInSortedLists__6CActorCFv /* 8004C768 000496C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004C76C 000496CC 41 82 01 0C */ beq lbl_8004C878 /* 8004C770 000496D0 88 1F 00 E4 */ lbz r0, 0xe4(r31) /* 8004C774 000496D4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 8004C778 000496D8 41 82 01 00 */ beq lbl_8004C878 /* 8004C77C 000496DC 7F C4 F3 78 */ mr r4, r30 /* 8004C780 000496E0 7F E5 FB 78 */ mr r5, r31 /* 8004C784 000496E4 38 61 00 08 */ addi r3, r1, 8 /* 8004C788 000496E8 48 00 01 99 */ bl CalculateObjectBounds__13CStateManagerFRC6CActor /* 8004C78C 000496EC 88 01 00 20 */ lbz r0, 0x20(r1) /* 8004C790 000496F0 28 00 00 00 */ cmplwi r0, 0 /* 8004C794 000496F4 98 01 00 3C */ stb r0, 0x3c(r1) /* 8004C798 000496F8 41 82 00 3C */ beq lbl_8004C7D4 /* 8004C79C 000496FC 34 61 00 24 */ addic. r3, r1, 0x24 /* 8004C7A0 00049700 41 82 00 34 */ beq lbl_8004C7D4 /* 8004C7A4 00049704 C0 01 00 08 */ lfs f0, 8(r1) /* 8004C7A8 00049708 D0 03 00 00 */ stfs f0, 0(r3) /* 8004C7AC 0004970C C0 01 00 0C */ lfs f0, 0xc(r1) /* 8004C7B0 00049710 D0 03 00 04 */ stfs f0, 4(r3) /* 8004C7B4 00049714 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004C7B8 00049718 D0 03 00 08 */ stfs f0, 8(r3) /* 8004C7BC 0004971C C0 01 00 14 */ lfs f0, 0x14(r1) /* 8004C7C0 00049720 D0 03 00 0C */ stfs f0, 0xc(r3) /* 8004C7C4 00049724 C0 01 00 18 */ lfs f0, 0x18(r1) /* 8004C7C8 00049728 D0 03 00 10 */ stfs f0, 0x10(r3) /* 8004C7CC 0004972C C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8004C7D0 00049730 D0 03 00 14 */ stfs f0, 0x14(r3) lbl_8004C7D4: /* 8004C7D4 00049734 38 00 00 00 */ li r0, 0 /* 8004C7D8 00049738 7F E4 FB 78 */ mr r4, r31 /* 8004C7DC 0004973C 98 01 00 20 */ stb r0, 0x20(r1) /* 8004C7E0 00049740 80 7E 08 74 */ lwz r3, 0x874(r30) /* 8004C7E4 00049744 48 0F DD 09 */ bl ActorInLists__Q22SL18CSortedListManagerCFPC6CActor /* 8004C7E8 00049748 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004C7EC 0004974C 88 A1 00 3C */ lbz r5, 0x3c(r1) /* 8004C7F0 00049750 40 82 00 0C */ bne lbl_8004C7FC /* 8004C7F4 00049754 28 05 00 00 */ cmplwi r5, 0 /* 8004C7F8 00049758 41 82 00 78 */ beq lbl_8004C870 lbl_8004C7FC: /* 8004C7FC 0004975C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004C800 00049760 88 7F 00 E4 */ lbz r3, 0xe4(r31) /* 8004C804 00049764 38 80 00 00 */ li r4, 0 /* 8004C808 00049768 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b /* 8004C80C 0004976C 98 7F 00 E4 */ stb r3, 0xe4(r31) /* 8004C810 00049770 41 82 00 3C */ beq lbl_8004C84C /* 8004C814 00049774 88 1F 00 30 */ lbz r0, 0x30(r31) /* 8004C818 00049778 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004C81C 0004977C 41 82 00 0C */ beq lbl_8004C828 /* 8004C820 00049780 28 05 00 00 */ cmplwi r5, 0 /* 8004C824 00049784 40 82 00 14 */ bne lbl_8004C838 lbl_8004C828: /* 8004C828 00049788 80 7E 08 74 */ lwz r3, 0x874(r30) /* 8004C82C 0004978C 7F E4 FB 78 */ mr r4, r31 /* 8004C830 00049790 48 0F D6 FD */ bl Remove__Q22SL18CSortedListManagerFPC6CActor /* 8004C834 00049794 48 00 00 3C */ b lbl_8004C870 lbl_8004C838: /* 8004C838 00049798 80 7E 08 74 */ lwz r3, 0x874(r30) /* 8004C83C 0004979C 7F E4 FB 78 */ mr r4, r31 /* 8004C840 000497A0 38 A1 00 24 */ addi r5, r1, 0x24 /* 8004C844 000497A4 48 0F D6 1D */ bl Move__Q22SL18CSortedListManagerFPC6CActorRC6CAABox /* 8004C848 000497A8 48 00 00 28 */ b lbl_8004C870 lbl_8004C84C: /* 8004C84C 000497AC 88 1F 00 30 */ lbz r0, 0x30(r31) /* 8004C850 000497B0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004C854 000497B4 41 82 00 1C */ beq lbl_8004C870 /* 8004C858 000497B8 28 05 00 00 */ cmplwi r5, 0 /* 8004C85C 000497BC 41 82 00 14 */ beq lbl_8004C870 /* 8004C860 000497C0 80 7E 08 74 */ lwz r3, 0x874(r30) /* 8004C864 000497C4 7F E4 FB 78 */ mr r4, r31 /* 8004C868 000497C8 38 A1 00 24 */ addi r5, r1, 0x24 /* 8004C86C 000497CC 48 0F D7 79 */ bl Insert__Q22SL18CSortedListManagerFP6CActorRC6CAABox lbl_8004C870: /* 8004C870 000497D0 38 00 00 00 */ li r0, 0 /* 8004C874 000497D4 98 01 00 3C */ stb r0, 0x3c(r1) lbl_8004C878: /* 8004C878 000497D8 80 01 00 54 */ lwz r0, 0x54(r1) /* 8004C87C 000497DC 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 8004C880 000497E0 83 C1 00 48 */ lwz r30, 0x48(r1) /* 8004C884 000497E4 7C 08 03 A6 */ mtlr r0 /* 8004C888 000497E8 38 21 00 50 */ addi r1, r1, 0x50 /* 8004C88C 000497EC 4E 80 00 20 */ blr .global UpdateSortedLists__13CStateManagerFv UpdateSortedLists__13CStateManagerFv: /* 8004C890 000497F0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004C894 000497F4 7C 08 02 A6 */ mflr r0 /* 8004C898 000497F8 90 01 00 24 */ stw r0, 0x24(r1) /* 8004C89C 000497FC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004C8A0 00049800 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004C8A4 00049804 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004C8A8 00049808 7C 7D 1B 78 */ mr r29, r3 /* 8004C8AC 0004980C 80 03 08 50 */ lwz r0, 0x850(r3) /* 8004C8B0 00049810 28 00 00 00 */ cmplwi r0, 0 /* 8004C8B4 00049814 41 82 00 50 */ beq lbl_8004C904 /* 8004C8B8 00049818 83 FD 08 18 */ lwz r31, 0x818(r29) /* 8004C8BC 0004981C AB DF 20 08 */ lha r30, 0x2008(r31) /* 8004C8C0 00049820 48 00 00 3C */ b lbl_8004C8FC lbl_8004C8C4: /* 8004C8C4 00049824 7F E3 FB 78 */ mr r3, r31 /* 8004C8C8 00049828 7F C4 F3 78 */ mr r4, r30 /* 8004C8CC 0004982C 4B FC 34 49 */ bl __vc__11CObjectListFi /* 8004C8D0 00049830 7C 64 1B 79 */ or. r4, r3, r3 /* 8004C8D4 00049834 41 82 00 0C */ beq lbl_8004C8E0 /* 8004C8D8 00049838 7F A3 EB 78 */ mr r3, r29 /* 8004C8DC 0004983C 4B FF FE 69 */ bl UpdateActorInSortedLists__13CStateManagerFR6CActor lbl_8004C8E0: /* 8004C8E0 00049840 2C 1E FF FF */ cmpwi r30, -1 /* 8004C8E4 00049844 41 82 00 14 */ beq lbl_8004C8F8 /* 8004C8E8 00049848 57 C3 18 38 */ slwi r3, r30, 3 /* 8004C8EC 0004984C 38 03 00 08 */ addi r0, r3, 8 /* 8004C8F0 00049850 7F DF 02 AE */ lhax r30, r31, r0 /* 8004C8F4 00049854 48 00 00 08 */ b lbl_8004C8FC lbl_8004C8F8: /* 8004C8F8 00049858 3B C0 FF FF */ li r30, -1 lbl_8004C8FC: /* 8004C8FC 0004985C 2C 1E FF FF */ cmpwi r30, -1 /* 8004C900 00049860 40 82 FF C4 */ bne lbl_8004C8C4 lbl_8004C904: /* 8004C904 00049864 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004C908 00049868 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004C90C 0004986C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004C910 00049870 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004C914 00049874 7C 08 03 A6 */ mtlr r0 /* 8004C918 00049878 38 21 00 20 */ addi r1, r1, 0x20 /* 8004C91C 0004987C 4E 80 00 20 */ blr .global CalculateObjectBounds__13CStateManagerFRC6CActor CalculateObjectBounds__13CStateManagerFRC6CActor: /* 8004C920 00049880 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8004C924 00049884 7C 08 02 A6 */ mflr r0 /* 8004C928 00049888 90 01 00 A4 */ stw r0, 0xa4(r1) /* 8004C92C 0004988C 93 E1 00 9C */ stw r31, 0x9c(r1) /* 8004C930 00049890 93 C1 00 98 */ stw r30, 0x98(r1) /* 8004C934 00049894 7C BE 2B 78 */ mr r30, r5 /* 8004C938 00049898 7F C4 F3 78 */ mr r4, r30 /* 8004C93C 0004989C 93 A1 00 94 */ stw r29, 0x94(r1) /* 8004C940 000498A0 7C 7D 1B 78 */ mr r29, r3 /* 8004C944 000498A4 38 61 00 08 */ addi r3, r1, 8 /* 8004C948 000498A8 48 05 FE 09 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FR7CEntity" /* 8004C94C 000498AC 7F C4 F3 78 */ mr r4, r30 /* 8004C950 000498B0 83 C3 00 04 */ lwz r30, 4(r3) /* 8004C954 000498B4 81 84 00 00 */ lwz r12, 0(r4) /* 8004C958 000498B8 38 61 00 40 */ addi r3, r1, 0x40 /* 8004C95C 000498BC 81 8C 00 40 */ lwz r12, 0x40(r12) /* 8004C960 000498C0 7D 89 03 A6 */ mtctr r12 /* 8004C964 000498C4 4E 80 04 21 */ bctrl /* 8004C968 000498C8 88 01 00 58 */ lbz r0, 0x58(r1) /* 8004C96C 000498CC 28 00 00 00 */ cmplwi r0, 0 /* 8004C970 000498D0 98 01 00 8C */ stb r0, 0x8c(r1) /* 8004C974 000498D4 41 82 00 3C */ beq lbl_8004C9B0 /* 8004C978 000498D8 34 61 00 74 */ addic. r3, r1, 0x74 /* 8004C97C 000498DC 41 82 00 34 */ beq lbl_8004C9B0 /* 8004C980 000498E0 C0 01 00 40 */ lfs f0, 0x40(r1) /* 8004C984 000498E4 D0 03 00 00 */ stfs f0, 0(r3) /* 8004C988 000498E8 C0 01 00 44 */ lfs f0, 0x44(r1) /* 8004C98C 000498EC D0 03 00 04 */ stfs f0, 4(r3) /* 8004C990 000498F0 C0 01 00 48 */ lfs f0, 0x48(r1) /* 8004C994 000498F4 D0 03 00 08 */ stfs f0, 8(r3) /* 8004C998 000498F8 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 8004C99C 000498FC D0 03 00 0C */ stfs f0, 0xc(r3) /* 8004C9A0 00049900 C0 01 00 50 */ lfs f0, 0x50(r1) /* 8004C9A4 00049904 D0 03 00 10 */ stfs f0, 0x10(r3) /* 8004C9A8 00049908 C0 01 00 54 */ lfs f0, 0x54(r1) /* 8004C9AC 0004990C D0 03 00 14 */ stfs f0, 0x14(r3) lbl_8004C9B0: /* 8004C9B0 00049910 88 01 00 8C */ lbz r0, 0x8c(r1) /* 8004C9B4 00049914 38 60 00 00 */ li r3, 0 /* 8004C9B8 00049918 98 61 00 58 */ stb r3, 0x58(r1) /* 8004C9BC 0004991C 28 00 00 00 */ cmplwi r0, 0 /* 8004C9C0 00049920 41 82 00 D0 */ beq lbl_8004CA90 /* 8004C9C4 00049924 3C 60 80 5A */ lis r3, lbl_805A6754@ha /* 8004C9C8 00049928 3B E1 00 74 */ addi r31, r1, 0x74 /* 8004C9CC 0004992C 38 A3 67 54 */ addi r5, r3, lbl_805A6754@l /* 8004C9D0 00049930 38 61 00 5C */ addi r3, r1, 0x5c /* 8004C9D4 00049934 C0 A5 00 00 */ lfs f5, 0(r5) /* 8004C9D8 00049938 7F E4 FB 78 */ mr r4, r31 /* 8004C9DC 0004993C C0 85 00 04 */ lfs f4, 4(r5) /* 8004C9E0 00049940 C0 65 00 08 */ lfs f3, 8(r5) /* 8004C9E4 00049944 C0 45 00 0C */ lfs f2, 0xc(r5) /* 8004C9E8 00049948 C0 25 00 10 */ lfs f1, 0x10(r5) /* 8004C9EC 0004994C C0 05 00 14 */ lfs f0, 0x14(r5) /* 8004C9F0 00049950 D0 A1 00 5C */ stfs f5, 0x5c(r1) /* 8004C9F4 00049954 D0 81 00 60 */ stfs f4, 0x60(r1) /* 8004C9F8 00049958 D0 61 00 64 */ stfs f3, 0x64(r1) /* 8004C9FC 0004995C D0 41 00 68 */ stfs f2, 0x68(r1) /* 8004CA00 00049960 D0 21 00 6C */ stfs f1, 0x6c(r1) /* 8004CA04 00049964 D0 01 00 70 */ stfs f0, 0x70(r1) /* 8004CA08 00049968 48 2E B1 01 */ bl AccumulateBounds__6CAABoxFRC9CVector3f /* 8004CA0C 0004996C 38 61 00 5C */ addi r3, r1, 0x5c /* 8004CA10 00049970 38 9F 00 0C */ addi r4, r31, 0xc /* 8004CA14 00049974 48 2E B0 F5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f /* 8004CA18 00049978 28 1E 00 00 */ cmplwi r30, 0 /* 8004CA1C 0004997C 41 82 00 28 */ beq lbl_8004CA44 /* 8004CA20 00049980 7F C4 F3 78 */ mr r4, r30 /* 8004CA24 00049984 38 61 00 28 */ addi r3, r1, 0x28 /* 8004CA28 00049988 48 0C DF 05 */ bl GetBoundingBox__13CPhysicsActorCFv /* 8004CA2C 0004998C 38 61 00 5C */ addi r3, r1, 0x5c /* 8004CA30 00049990 38 81 00 28 */ addi r4, r1, 0x28 /* 8004CA34 00049994 48 2E B0 D5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f /* 8004CA38 00049998 38 61 00 5C */ addi r3, r1, 0x5c /* 8004CA3C 0004999C 38 81 00 34 */ addi r4, r1, 0x34 /* 8004CA40 000499A0 48 2E B0 C9 */ bl AccumulateBounds__6CAABoxFRC9CVector3f lbl_8004CA44: /* 8004CA44 000499A4 38 00 00 01 */ li r0, 1 /* 8004CA48 000499A8 28 1D 00 00 */ cmplwi r29, 0 /* 8004CA4C 000499AC 98 1D 00 18 */ stb r0, 0x18(r29) /* 8004CA50 000499B0 41 82 00 34 */ beq lbl_8004CA84 /* 8004CA54 000499B4 C0 01 00 5C */ lfs f0, 0x5c(r1) /* 8004CA58 000499B8 D0 1D 00 00 */ stfs f0, 0(r29) /* 8004CA5C 000499BC C0 01 00 60 */ lfs f0, 0x60(r1) /* 8004CA60 000499C0 D0 1D 00 04 */ stfs f0, 4(r29) /* 8004CA64 000499C4 C0 01 00 64 */ lfs f0, 0x64(r1) /* 8004CA68 000499C8 D0 1D 00 08 */ stfs f0, 8(r29) /* 8004CA6C 000499CC C0 01 00 68 */ lfs f0, 0x68(r1) /* 8004CA70 000499D0 D0 1D 00 0C */ stfs f0, 0xc(r29) /* 8004CA74 000499D4 C0 01 00 6C */ lfs f0, 0x6c(r1) /* 8004CA78 000499D8 D0 1D 00 10 */ stfs f0, 0x10(r29) /* 8004CA7C 000499DC C0 01 00 70 */ lfs f0, 0x70(r1) /* 8004CA80 000499E0 D0 1D 00 14 */ stfs f0, 0x14(r29) lbl_8004CA84: /* 8004CA84 000499E4 38 00 00 00 */ li r0, 0 /* 8004CA88 000499E8 98 01 00 8C */ stb r0, 0x8c(r1) /* 8004CA8C 000499EC 48 00 00 6C */ b lbl_8004CAF8 lbl_8004CA90: /* 8004CA90 000499F0 28 1E 00 00 */ cmplwi r30, 0 /* 8004CA94 000499F4 41 82 00 5C */ beq lbl_8004CAF0 /* 8004CA98 000499F8 7F C4 F3 78 */ mr r4, r30 /* 8004CA9C 000499FC 38 61 00 10 */ addi r3, r1, 0x10 /* 8004CAA0 00049A00 48 0C DE 8D */ bl GetBoundingBox__13CPhysicsActorCFv /* 8004CAA4 00049A04 38 00 00 01 */ li r0, 1 /* 8004CAA8 00049A08 28 1D 00 00 */ cmplwi r29, 0 /* 8004CAAC 00049A0C 98 1D 00 18 */ stb r0, 0x18(r29) /* 8004CAB0 00049A10 41 82 00 34 */ beq lbl_8004CAE4 /* 8004CAB4 00049A14 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004CAB8 00049A18 D0 1D 00 00 */ stfs f0, 0(r29) /* 8004CABC 00049A1C C0 01 00 14 */ lfs f0, 0x14(r1) /* 8004CAC0 00049A20 D0 1D 00 04 */ stfs f0, 4(r29) /* 8004CAC4 00049A24 C0 01 00 18 */ lfs f0, 0x18(r1) /* 8004CAC8 00049A28 D0 1D 00 08 */ stfs f0, 8(r29) /* 8004CACC 00049A2C C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8004CAD0 00049A30 D0 1D 00 0C */ stfs f0, 0xc(r29) /* 8004CAD4 00049A34 C0 01 00 20 */ lfs f0, 0x20(r1) /* 8004CAD8 00049A38 D0 1D 00 10 */ stfs f0, 0x10(r29) /* 8004CADC 00049A3C C0 01 00 24 */ lfs f0, 0x24(r1) /* 8004CAE0 00049A40 D0 1D 00 14 */ stfs f0, 0x14(r29) lbl_8004CAE4: /* 8004CAE4 00049A44 38 00 00 00 */ li r0, 0 /* 8004CAE8 00049A48 98 01 00 8C */ stb r0, 0x8c(r1) /* 8004CAEC 00049A4C 48 00 00 0C */ b lbl_8004CAF8 lbl_8004CAF0: /* 8004CAF0 00049A50 98 7D 00 18 */ stb r3, 0x18(r29) /* 8004CAF4 00049A54 98 61 00 8C */ stb r3, 0x8c(r1) lbl_8004CAF8: /* 8004CAF8 00049A58 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 8004CAFC 00049A5C 83 E1 00 9C */ lwz r31, 0x9c(r1) /* 8004CB00 00049A60 83 C1 00 98 */ lwz r30, 0x98(r1) /* 8004CB04 00049A64 83 A1 00 94 */ lwz r29, 0x94(r1) /* 8004CB08 00049A68 7C 08 03 A6 */ mtlr r0 /* 8004CB0C 00049A6C 38 21 00 A0 */ addi r1, r1, 0xa0 /* 8004CB10 00049A70 4E 80 00 20 */ blr .global AddObject__13CStateManagerFR7CEntity AddObject__13CStateManagerFR7CEntity: /* 8004CB14 00049A74 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8004CB18 00049A78 7C 08 02 A6 */ mflr r0 /* 8004CB1C 00049A7C 90 01 00 64 */ stw r0, 0x64(r1) /* 8004CB20 00049A80 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8004CB24 00049A84 7C 9F 23 78 */ mr r31, r4 /* 8004CB28 00049A88 93 C1 00 58 */ stw r30, 0x58(r1) /* 8004CB2C 00049A8C 7C 7E 1B 78 */ mr r30, r3 /* 8004CB30 00049A90 93 A1 00 54 */ stw r29, 0x54(r1) /* 8004CB34 00049A94 93 81 00 50 */ stw r28, 0x50(r1) /* 8004CB38 00049A98 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13) /* 8004CB3C 00049A9C 80 A4 00 0C */ lwz r5, 0xc(r4) /* 8004CB40 00049AA0 54 00 01 BE */ clrlwi r0, r0, 6 /* 8004CB44 00049AA4 54 A3 01 BE */ clrlwi r3, r5, 6 /* 8004CB48 00049AA8 7C 03 00 40 */ cmplw r3, r0 /* 8004CB4C 00049AAC 41 82 00 24 */ beq lbl_8004CB70 /* 8004CB50 00049AB0 A0 1F 00 08 */ lhz r0, 8(r31) /* 8004CB54 00049AB4 38 61 00 38 */ addi r3, r1, 0x38 /* 8004CB58 00049AB8 38 9E 08 90 */ addi r4, r30, 0x890 /* 8004CB5C 00049ABC 38 C1 00 30 */ addi r6, r1, 0x30 /* 8004CB60 00049AC0 90 A1 00 30 */ stw r5, 0x30(r1) /* 8004CB64 00049AC4 B0 01 00 34 */ sth r0, 0x34(r1) /* 8004CB68 00049AC8 80 BE 08 A0 */ lwz r5, 0x8a0(r30) /* 8004CB6C 00049ACC 48 00 31 51 */ bl "insert_into__Q24rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>FPQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>4nodeRCQ24rstl32pair<13TGameScriptId,9TUniqueId>" lbl_8004CB70: /* 8004CB70 00049AD0 3B BE 08 0C */ addi r29, r30, 0x80c /* 8004CB74 00049AD4 7F BC EB 78 */ mr r28, r29 /* 8004CB78 00049AD8 48 00 00 14 */ b lbl_8004CB8C lbl_8004CB7C: /* 8004CB7C 00049ADC 80 7C 00 04 */ lwz r3, 4(r28) /* 8004CB80 00049AE0 7F E4 FB 78 */ mr r4, r31 /* 8004CB84 00049AE4 4B FC 34 01 */ bl AddObject__11CObjectListFR7CEntity /* 8004CB88 00049AE8 3B 9C 00 08 */ addi r28, r28, 8 lbl_8004CB8C: /* 8004CB8C 00049AEC 80 1E 08 08 */ lwz r0, 0x808(r30) /* 8004CB90 00049AF0 54 00 18 38 */ slwi r0, r0, 3 /* 8004CB94 00049AF4 7C 1D 02 14 */ add r0, r29, r0 /* 8004CB98 00049AF8 7C 1C 00 40 */ cmplw r28, r0 /* 8004CB9C 00049AFC 40 82 FF E0 */ bne lbl_8004CB7C /* 8004CBA0 00049B00 80 7F 00 04 */ lwz r3, 4(r31) /* 8004CBA4 00049B04 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8004CBA8 00049B08 7C 03 00 00 */ cmpw r3, r0 /* 8004CBAC 00049B0C 40 82 00 30 */ bne lbl_8004CBDC /* 8004CBB0 00049B10 80 9E 08 4C */ lwz r4, 0x84c(r30) /* 8004CBB4 00049B14 28 04 00 00 */ cmplwi r4, 0 /* 8004CBB8 00049B18 41 82 00 24 */ beq lbl_8004CBDC /* 8004CBBC 00049B1C A0 7F 00 08 */ lhz r3, 8(r31) /* 8004CBC0 00049B20 A0 04 00 08 */ lhz r0, 8(r4) /* 8004CBC4 00049B24 7C 03 00 40 */ cmplw r3, r0 /* 8004CBC8 00049B28 41 82 00 14 */ beq lbl_8004CBDC /* 8004CBCC 00049B2C 80 04 00 04 */ lwz r0, 4(r4) /* 8004CBD0 00049B30 90 01 00 1C */ stw r0, 0x1c(r1) /* 8004CBD4 00049B34 90 01 00 20 */ stw r0, 0x20(r1) /* 8004CBD8 00049B38 90 1F 00 04 */ stw r0, 4(r31) lbl_8004CBDC: /* 8004CBDC 00049B3C 80 BF 00 04 */ lwz r5, 4(r31) /* 8004CBE0 00049B40 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8004CBE4 00049B44 90 A1 00 24 */ stw r5, 0x24(r1) /* 8004CBE8 00049B48 7C 05 00 00 */ cmpw r5, r0 /* 8004CBEC 00049B4C 41 82 00 38 */ beq lbl_8004CC24 /* 8004CBF0 00049B50 80 9E 08 50 */ lwz r4, 0x850(r30) /* 8004CBF4 00049B54 54 A3 18 38 */ slwi r3, r5, 3 /* 8004CBF8 00049B58 38 03 00 04 */ addi r0, r3, 4 /* 8004CBFC 00049B5C 90 A1 00 18 */ stw r5, 0x18(r1) /* 8004CC00 00049B60 80 64 00 20 */ lwz r3, 0x20(r4) /* 8004CC04 00049B64 7C 63 00 2E */ lwzx r3, r3, r0 /* 8004CC08 00049B68 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 8004CC0C 00049B6C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8004CC10 00049B70 41 82 00 14 */ beq lbl_8004CC24 /* 8004CC14 00049B74 80 63 01 2C */ lwz r3, 0x12c(r3) /* 8004CC18 00049B78 7F E4 FB 78 */ mr r4, r31 /* 8004CC1C 00049B7C 80 63 10 C0 */ lwz r3, 0x10c0(r3) /* 8004CC20 00049B80 4B FC 33 65 */ bl AddObject__11CObjectListFR7CEntity lbl_8004CC24: /* 8004CC24 00049B84 7F E4 FB 78 */ mr r4, r31 /* 8004CC28 00049B88 38 61 00 28 */ addi r3, r1, 0x28 /* 8004CC2C 00049B8C 48 06 30 D1 */ bl "__ct__19TCastToPtr<6CActor>FR7CEntity" /* 8004CC30 00049B90 80 83 00 04 */ lwz r4, 4(r3) /* 8004CC34 00049B94 28 04 00 00 */ cmplwi r4, 0 /* 8004CC38 00049B98 41 82 00 0C */ beq lbl_8004CC44 /* 8004CC3C 00049B9C 7F C3 F3 78 */ mr r3, r30 /* 8004CC40 00049BA0 4B FF FB 05 */ bl UpdateActorInSortedLists__13CStateManagerFR6CActor lbl_8004CC44: /* 8004CC44 00049BA4 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004CC48 00049BA8 7F E3 FB 78 */ mr r3, r31 /* 8004CC4C 00049BAC 7F C6 F3 78 */ mr r6, r30 /* 8004CC50 00049BB0 38 A1 00 0C */ addi r5, r1, 0xc /* 8004CC54 00049BB4 B0 01 00 0C */ sth r0, 0xc(r1) /* 8004CC58 00049BB8 38 80 00 21 */ li r4, 0x21 /* 8004CC5C 00049BBC 81 9F 00 00 */ lwz r12, 0(r31) /* 8004CC60 00049BC0 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004CC64 00049BC4 7D 89 03 A6 */ mtctr r12 /* 8004CC68 00049BC8 4E 80 04 21 */ bctrl /* 8004CC6C 00049BCC 80 7F 00 04 */ lwz r3, 4(r31) /* 8004CC70 00049BD0 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8004CC74 00049BD4 7C 03 00 00 */ cmpw r3, r0 /* 8004CC78 00049BD8 41 82 00 5C */ beq lbl_8004CCD4 /* 8004CC7C 00049BDC 7F C3 F3 78 */ mr r3, r30 /* 8004CC80 00049BE0 48 00 00 9D */ bl sub_8004cd1c /* 8004CC84 00049BE4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004CC88 00049BE8 41 82 00 4C */ beq lbl_8004CCD4 /* 8004CC8C 00049BEC 80 BF 00 04 */ lwz r5, 4(r31) /* 8004CC90 00049BF0 80 9E 08 50 */ lwz r4, 0x850(r30) /* 8004CC94 00049BF4 54 A3 18 38 */ slwi r3, r5, 3 /* 8004CC98 00049BF8 90 A1 00 10 */ stw r5, 0x10(r1) /* 8004CC9C 00049BFC 80 84 00 20 */ lwz r4, 0x20(r4) /* 8004CCA0 00049C00 38 03 00 04 */ addi r0, r3, 4 /* 8004CCA4 00049C04 90 A1 00 14 */ stw r5, 0x14(r1) /* 8004CCA8 00049C08 7C 64 00 2E */ lwzx r3, r4, r0 /* 8004CCAC 00049C0C 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 8004CCB0 00049C10 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 8004CCB4 00049C14 41 82 00 20 */ beq lbl_8004CCD4 /* 8004CCB8 00049C18 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004CCBC 00049C1C 7F C3 F3 78 */ mr r3, r30 /* 8004CCC0 00049C20 7F E4 FB 78 */ mr r4, r31 /* 8004CCC4 00049C24 38 A1 00 08 */ addi r5, r1, 8 /* 8004CCC8 00049C28 B0 01 00 08 */ sth r0, 8(r1) /* 8004CCCC 00049C2C 38 C0 00 23 */ li r6, 0x23 /* 8004CCD0 00049C30 4B FF 72 01 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage lbl_8004CCD4: /* 8004CCD4 00049C34 80 01 00 64 */ lwz r0, 0x64(r1) /* 8004CCD8 00049C38 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8004CCDC 00049C3C 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8004CCE0 00049C40 83 A1 00 54 */ lwz r29, 0x54(r1) /* 8004CCE4 00049C44 83 81 00 50 */ lwz r28, 0x50(r1) /* 8004CCE8 00049C48 7C 08 03 A6 */ mtlr r0 /* 8004CCEC 00049C4C 38 21 00 60 */ addi r1, r1, 0x60 /* 8004CCF0 00049C50 4E 80 00 20 */ blr .global AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence: /* 8004CCF4 00049C54 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004CCF8 00049C58 7C 08 02 A6 */ mflr r0 /* 8004CCFC 00049C5C 28 04 00 00 */ cmplwi r4, 0 /* 8004CD00 00049C60 90 01 00 14 */ stw r0, 0x14(r1) /* 8004CD04 00049C64 41 82 00 08 */ beq lbl_8004CD0C /* 8004CD08 00049C68 4B FF FE 0D */ bl AddObject__13CStateManagerFR7CEntity lbl_8004CD0C: /* 8004CD0C 00049C6C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004CD10 00049C70 7C 08 03 A6 */ mtlr r0 /* 8004CD14 00049C74 38 21 00 10 */ addi r1, r1, 0x10 /* 8004CD18 00049C78 4E 80 00 20 */ blr .global sub_8004cd1c sub_8004cd1c: /* 8004CD1C 00049C7C 80 63 08 50 */ lwz r3, 0x850(r3) /* 8004CD20 00049C80 7C 03 00 D0 */ neg r0, r3 /* 8004CD24 00049C84 7C 00 1B 78 */ or r0, r0, r3 /* 8004CD28 00049C88 54 03 0F FE */ srwi r3, r0, 0x1f /* 8004CD2C 00049C8C 4E 80 00 20 */ blr .global "RayCollideWorldInternal__13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterRCQ24rstl49reserved_vector<9TUniqueId,1024>RC6CActor" "RayCollideWorldInternal__13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterRCQ24rstl49reserved_vector<9TUniqueId,1024>RC6CActor": /* 8004CD30 00049C90 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004CD34 00049C94 7C 08 02 A6 */ mflr r0 /* 8004CD38 00049C98 90 01 00 44 */ stw r0, 0x44(r1) /* 8004CD3C 00049C9C DB E1 00 30 */ stfd f31, 0x30(r1) /* 8004CD40 00049CA0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8004CD44 00049CA4 BF 41 00 18 */ stmw r26, 0x18(r1) /* 8004CD48 00049CA8 7C 9B 23 78 */ mr r27, r4 /* 8004CD4C 00049CAC 7C 7A 1B 78 */ mr r26, r3 /* 8004CD50 00049CB0 C0 25 00 04 */ lfs f1, 4(r5) /* 8004CD54 00049CB4 7C DC 33 78 */ mr r28, r6 /* 8004CD58 00049CB8 C0 04 00 04 */ lfs f0, 4(r4) /* 8004CD5C 00049CBC 7C FD 3B 78 */ mr r29, r7 /* 8004CD60 00049CC0 C0 65 00 08 */ lfs f3, 8(r5) /* 8004CD64 00049CC4 7D 1E 43 78 */ mr r30, r8 /* 8004CD68 00049CC8 C0 44 00 08 */ lfs f2, 8(r4) /* 8004CD6C 00049CCC EC 81 00 28 */ fsubs f4, f1, f0 /* 8004CD70 00049CD0 C0 25 00 00 */ lfs f1, 0(r5) /* 8004CD74 00049CD4 38 61 00 08 */ addi r3, r1, 8 /* 8004CD78 00049CD8 C0 04 00 00 */ lfs f0, 0(r4) /* 8004CD7C 00049CDC EC 43 10 28 */ fsubs f2, f3, f2 /* 8004CD80 00049CE0 D0 81 00 0C */ stfs f4, 0xc(r1) /* 8004CD84 00049CE4 EC 01 00 28 */ fsubs f0, f1, f0 /* 8004CD88 00049CE8 3B E0 00 01 */ li r31, 1 /* 8004CD8C 00049CEC D0 41 00 10 */ stfs f2, 0x10(r1) /* 8004CD90 00049CF0 D0 01 00 08 */ stfs f0, 8(r1) /* 8004CD94 00049CF4 48 2C 79 65 */ bl CanBeNormalized__9CVector3fCFv /* 8004CD98 00049CF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004CD9C 00049CFC 41 82 00 80 */ beq lbl_8004CE1C /* 8004CDA0 00049D00 38 61 00 08 */ addi r3, r1, 8 /* 8004CDA4 00049D04 48 2C 7B 15 */ bl Magnitude__9CVector3fCFv /* 8004CDA8 00049D08 FF E0 08 90 */ fmr f31, f1 /* 8004CDAC 00049D0C C0 62 85 64 */ lfs f3, lbl_805AA284@sda21(r2) /* 8004CDB0 00049D10 C0 81 00 08 */ lfs f4, 8(r1) /* 8004CDB4 00049D14 7F 43 D3 78 */ mr r3, r26 /* 8004CDB8 00049D18 C0 41 00 0C */ lfs f2, 0xc(r1) /* 8004CDBC 00049D1C 7F 64 DB 78 */ mr r4, r27 /* 8004CDC0 00049D20 EC A3 F8 24 */ fdivs f5, f3, f31 /* 8004CDC4 00049D24 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004CDC8 00049D28 7F 86 E3 78 */ mr r6, r28 /* 8004CDCC 00049D2C 38 A1 00 08 */ addi r5, r1, 8 /* 8004CDD0 00049D30 EC 64 01 72 */ fmuls f3, f4, f5 /* 8004CDD4 00049D34 EC 42 01 72 */ fmuls f2, f2, f5 /* 8004CDD8 00049D38 EC 00 01 72 */ fmuls f0, f0, f5 /* 8004CDDC 00049D3C D0 61 00 08 */ stfs f3, 8(r1) /* 8004CDE0 00049D40 D0 41 00 0C */ stfs f2, 0xc(r1) /* 8004CDE4 00049D44 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8004CDE8 00049D48 48 13 7E 11 */ bl RayStaticIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter /* 8004CDEC 00049D4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004CDF0 00049D50 7C 7F 1B 78 */ mr r31, r3 /* 8004CDF4 00049D54 41 82 00 28 */ beq lbl_8004CE1C /* 8004CDF8 00049D58 FC 20 F8 90 */ fmr f1, f31 /* 8004CDFC 00049D5C 7F 43 D3 78 */ mr r3, r26 /* 8004CE00 00049D60 7F 64 DB 78 */ mr r4, r27 /* 8004CE04 00049D64 7F 86 E3 78 */ mr r6, r28 /* 8004CE08 00049D68 7F A7 EB 78 */ mr r7, r29 /* 8004CE0C 00049D6C 7F C8 F3 78 */ mr r8, r30 /* 8004CE10 00049D70 38 A1 00 08 */ addi r5, r1, 8 /* 8004CE14 00049D74 48 13 7E FD */ bl "RayDynamicIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterQ24rstl49reserved_vector<9TUniqueId,1024>PC6CActorf" /* 8004CE18 00049D78 7C 7F 1B 78 */ mr r31, r3 lbl_8004CE1C: /* 8004CE1C 00049D7C 57 E3 06 3E */ clrlwi r3, r31, 0x18 /* 8004CE20 00049D80 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8004CE24 00049D84 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8004CE28 00049D88 BB 41 00 18 */ lmw r26, 0x18(r1) /* 8004CE2C 00049D8C 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004CE30 00049D90 7C 08 03 A6 */ mtlr r0 /* 8004CE34 00049D94 38 21 00 40 */ addi r1, r1, 0x40 /* 8004CE38 00049D98 4E 80 00 20 */ blr .global RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor: /* 8004CE3C 00049D9C 94 21 F7 D0 */ stwu r1, -0x830(r1) /* 8004CE40 00049DA0 7C 08 02 A6 */ mflr r0 /* 8004CE44 00049DA4 90 01 08 34 */ stw r0, 0x834(r1) /* 8004CE48 00049DA8 38 00 00 00 */ li r0, 0 /* 8004CE4C 00049DAC BF 61 08 1C */ stmw r27, 0x81c(r1) /* 8004CE50 00049DB0 7C 7B 1B 78 */ mr r27, r3 /* 8004CE54 00049DB4 7C 9C 23 78 */ mr r28, r4 /* 8004CE58 00049DB8 7C BD 2B 78 */ mr r29, r5 /* 8004CE5C 00049DBC 7C DE 33 78 */ mr r30, r6 /* 8004CE60 00049DC0 7C FF 3B 78 */ mr r31, r7 /* 8004CE64 00049DC4 38 61 00 08 */ addi r3, r1, 8 /* 8004CE68 00049DC8 C0 25 00 04 */ lfs f1, 4(r5) /* 8004CE6C 00049DCC C0 04 00 04 */ lfs f0, 4(r4) /* 8004CE70 00049DD0 C0 65 00 08 */ lfs f3, 8(r5) /* 8004CE74 00049DD4 EC 81 00 28 */ fsubs f4, f1, f0 /* 8004CE78 00049DD8 C0 44 00 08 */ lfs f2, 8(r4) /* 8004CE7C 00049DDC C0 25 00 00 */ lfs f1, 0(r5) /* 8004CE80 00049DE0 C0 04 00 00 */ lfs f0, 0(r4) /* 8004CE84 00049DE4 EC 43 10 28 */ fsubs f2, f3, f2 /* 8004CE88 00049DE8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004CE8C 00049DEC EC 01 00 28 */ fsubs f0, f1, f0 /* 8004CE90 00049DF0 D0 81 00 0C */ stfs f4, 0xc(r1) /* 8004CE94 00049DF4 D0 01 00 08 */ stfs f0, 8(r1) /* 8004CE98 00049DF8 D0 41 00 10 */ stfs f2, 0x10(r1) /* 8004CE9C 00049DFC 48 2C 7A 1D */ bl Magnitude__9CVector3fCFv /* 8004CEA0 00049E00 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 8004CEA4 00049E04 7F 63 DB 78 */ mr r3, r27 /* 8004CEA8 00049E08 C0 61 00 08 */ lfs f3, 8(r1) /* 8004CEAC 00049E0C 7F 85 E3 78 */ mr r5, r28 /* 8004CEB0 00049E10 EC 80 08 24 */ fdivs f4, f0, f1 /* 8004CEB4 00049E14 C0 41 00 0C */ lfs f2, 0xc(r1) /* 8004CEB8 00049E18 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004CEBC 00049E1C 7F C7 F3 78 */ mr r7, r30 /* 8004CEC0 00049E20 7F E8 FB 78 */ mr r8, r31 /* 8004CEC4 00049E24 38 81 00 14 */ addi r4, r1, 0x14 /* 8004CEC8 00049E28 EC 63 01 32 */ fmuls f3, f3, f4 /* 8004CECC 00049E2C 38 C1 00 08 */ addi r6, r1, 8 /* 8004CED0 00049E30 EC 42 01 32 */ fmuls f2, f2, f4 /* 8004CED4 00049E34 EC 00 01 32 */ fmuls f0, f0, f4 /* 8004CED8 00049E38 D0 61 00 08 */ stfs f3, 8(r1) /* 8004CEDC 00049E3C D0 41 00 0C */ stfs f2, 0xc(r1) /* 8004CEE0 00049E40 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8004CEE4 00049E44 4B FF F7 F5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" /* 8004CEE8 00049E48 7F 63 DB 78 */ mr r3, r27 /* 8004CEEC 00049E4C 7F 84 E3 78 */ mr r4, r28 /* 8004CEF0 00049E50 7F A5 EB 78 */ mr r5, r29 /* 8004CEF4 00049E54 7F C6 F3 78 */ mr r6, r30 /* 8004CEF8 00049E58 7F E8 FB 78 */ mr r8, r31 /* 8004CEFC 00049E5C 38 E1 00 14 */ addi r7, r1, 0x14 /* 8004CF00 00049E60 4B FF FE 31 */ bl "RayCollideWorldInternal__13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterRCQ24rstl49reserved_vector<9TUniqueId,1024>RC6CActor" /* 8004CF04 00049E64 80 C1 00 14 */ lwz r6, 0x14(r1) /* 8004CF08 00049E68 38 80 00 00 */ li r4, 0 /* 8004CF0C 00049E6C 2C 06 00 00 */ cmpwi r6, 0 /* 8004CF10 00049E70 40 81 00 40 */ ble lbl_8004CF50 /* 8004CF14 00049E74 2C 06 00 08 */ cmpwi r6, 8 /* 8004CF18 00049E78 38 A6 FF F8 */ addi r5, r6, -8 /* 8004CF1C 00049E7C 40 81 00 20 */ ble lbl_8004CF3C /* 8004CF20 00049E80 38 05 00 07 */ addi r0, r5, 7 /* 8004CF24 00049E84 54 00 E8 FE */ srwi r0, r0, 3 /* 8004CF28 00049E88 7C 09 03 A6 */ mtctr r0 /* 8004CF2C 00049E8C 2C 05 00 00 */ cmpwi r5, 0 /* 8004CF30 00049E90 40 81 00 0C */ ble lbl_8004CF3C lbl_8004CF34: /* 8004CF34 00049E94 38 84 00 08 */ addi r4, r4, 8 /* 8004CF38 00049E98 42 00 FF FC */ bdnz lbl_8004CF34 lbl_8004CF3C: /* 8004CF3C 00049E9C 7C 04 30 50 */ subf r0, r4, r6 /* 8004CF40 00049EA0 7C 09 03 A6 */ mtctr r0 /* 8004CF44 00049EA4 7C 04 30 00 */ cmpw r4, r6 /* 8004CF48 00049EA8 40 80 00 08 */ bge lbl_8004CF50 lbl_8004CF4C: /* 8004CF4C 00049EAC 42 00 00 00 */ bdnz lbl_8004CF4C lbl_8004CF50: /* 8004CF50 00049EB0 38 00 00 00 */ li r0, 0 /* 8004CF54 00049EB4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004CF58 00049EB8 BB 61 08 1C */ lmw r27, 0x81c(r1) /* 8004CF5C 00049EBC 80 01 08 34 */ lwz r0, 0x834(r1) /* 8004CF60 00049EC0 7C 08 03 A6 */ mtlr r0 /* 8004CF64 00049EC4 38 21 08 30 */ addi r1, r1, 0x830 /* 8004CF68 00049EC8 4E 80 00 20 */ blr .global "RayCollideWorld__13CStateManagerRC9CVector3fRC9CVector3fRCQ24rstl49reserved_vector<9TUniqueId,1024>RC15CMaterialFilterPC6CActor" "RayCollideWorld__13CStateManagerRC9CVector3fRC9CVector3fRCQ24rstl49reserved_vector<9TUniqueId,1024>RC15CMaterialFilterPC6CActor": /* 8004CF6C 00049ECC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004CF70 00049ED0 7C 08 02 A6 */ mflr r0 /* 8004CF74 00049ED4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004CF78 00049ED8 7C C0 33 78 */ mr r0, r6 /* 8004CF7C 00049EDC 7C E6 3B 78 */ mr r6, r7 /* 8004CF80 00049EE0 7C 07 03 78 */ mr r7, r0 /* 8004CF84 00049EE4 4B FF FD AD */ bl "RayCollideWorldInternal__13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterRCQ24rstl49reserved_vector<9TUniqueId,1024>RC6CActor" /* 8004CF88 00049EE8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004CF8C 00049EEC 7C 08 03 A6 */ mtlr r0 /* 8004CF90 00049EF0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004CF94 00049EF4 4E 80 00 20 */ blr .global RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter: /* 8004CF98 00049EF8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004CF9C 00049EFC 7C 08 02 A6 */ mflr r0 /* 8004CFA0 00049F00 90 01 00 14 */ stw r0, 0x14(r1) /* 8004CFA4 00049F04 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004CFA8 00049F08 7C 7F 1B 78 */ mr r31, r3 /* 8004CFAC 00049F0C 48 13 78 5D */ bl RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter /* 8004CFB0 00049F10 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004CFB4 00049F14 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004CFB8 00049F18 7C 08 03 A6 */ mtlr r0 /* 8004CFBC 00049F1C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004CFC0 00049F20 4E 80 00 20 */ blr .global "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": /* 8004CFC4 00049F24 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004CFC8 00049F28 7C 08 02 A6 */ mflr r0 /* 8004CFCC 00049F2C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004CFD0 00049F30 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004CFD4 00049F34 7C 7F 1B 78 */ mr r31, r3 /* 8004CFD8 00049F38 48 13 81 25 */ bl "RayWorldIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" /* 8004CFDC 00049F3C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004CFE0 00049F40 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004CFE4 00049F44 7C 08 03 A6 */ mtlr r0 /* 8004CFE8 00049F48 38 21 00 10 */ addi r1, r1, 0x10 /* 8004CFEC 00049F4C 4E 80 00 20 */ blr .global UpdateObjectInLists__13CStateManagerFR7CEntity UpdateObjectInLists__13CStateManagerFR7CEntity: /* 8004CFF0 00049F50 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004CFF4 00049F54 7C 08 02 A6 */ mflr r0 /* 8004CFF8 00049F58 90 01 00 34 */ stw r0, 0x34(r1) /* 8004CFFC 00049F5C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8004D000 00049F60 93 C1 00 28 */ stw r30, 0x28(r1) /* 8004D004 00049F64 93 A1 00 24 */ stw r29, 0x24(r1) /* 8004D008 00049F68 7C 9D 23 78 */ mr r29, r4 /* 8004D00C 00049F6C 93 81 00 20 */ stw r28, 0x20(r1) /* 8004D010 00049F70 7C 7C 1B 78 */ mr r28, r3 /* 8004D014 00049F74 3B FC 08 0C */ addi r31, r28, 0x80c /* 8004D018 00049F78 7F FE FB 78 */ mr r30, r31 /* 8004D01C 00049F7C 48 00 00 8C */ b lbl_8004D0A8 lbl_8004D020: /* 8004D020 00049F80 A0 1D 00 08 */ lhz r0, 8(r29) /* 8004D024 00049F84 38 81 00 1C */ addi r4, r1, 0x1c /* 8004D028 00049F88 B0 01 00 1C */ sth r0, 0x1c(r1) /* 8004D02C 00049F8C B0 01 00 18 */ sth r0, 0x18(r1) /* 8004D030 00049F90 80 7E 00 04 */ lwz r3, 4(r30) /* 8004D034 00049F94 4B FC 2D 19 */ bl GetValidObjectById__11CObjectListCF9TUniqueId /* 8004D038 00049F98 28 03 00 00 */ cmplwi r3, 0 /* 8004D03C 00049F9C 41 82 00 3C */ beq lbl_8004D078 /* 8004D040 00049FA0 80 7E 00 04 */ lwz r3, 4(r30) /* 8004D044 00049FA4 7F A4 EB 78 */ mr r4, r29 /* 8004D048 00049FA8 81 83 00 00 */ lwz r12, 0(r3) /* 8004D04C 00049FAC 81 8C 00 08 */ lwz r12, 8(r12) /* 8004D050 00049FB0 7D 89 03 A6 */ mtctr r12 /* 8004D054 00049FB4 4E 80 04 21 */ bctrl /* 8004D058 00049FB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004D05C 00049FBC 40 82 00 1C */ bne lbl_8004D078 /* 8004D060 00049FC0 A0 1D 00 08 */ lhz r0, 8(r29) /* 8004D064 00049FC4 38 81 00 14 */ addi r4, r1, 0x14 /* 8004D068 00049FC8 B0 01 00 14 */ sth r0, 0x14(r1) /* 8004D06C 00049FCC B0 01 00 10 */ sth r0, 0x10(r1) /* 8004D070 00049FD0 80 7E 00 04 */ lwz r3, 4(r30) /* 8004D074 00049FD4 4B FC 2E 31 */ bl RemoveObject__11CObjectListF9TUniqueId lbl_8004D078: /* 8004D078 00049FD8 A0 1D 00 08 */ lhz r0, 8(r29) /* 8004D07C 00049FDC 38 81 00 0C */ addi r4, r1, 0xc /* 8004D080 00049FE0 B0 01 00 0C */ sth r0, 0xc(r1) /* 8004D084 00049FE4 B0 01 00 08 */ sth r0, 8(r1) /* 8004D088 00049FE8 80 7E 00 04 */ lwz r3, 4(r30) /* 8004D08C 00049FEC 4B FC 2C C1 */ bl GetValidObjectById__11CObjectListCF9TUniqueId /* 8004D090 00049FF0 28 03 00 00 */ cmplwi r3, 0 /* 8004D094 00049FF4 40 82 00 10 */ bne lbl_8004D0A4 /* 8004D098 00049FF8 80 7E 00 04 */ lwz r3, 4(r30) /* 8004D09C 00049FFC 7F A4 EB 78 */ mr r4, r29 /* 8004D0A0 0004A000 4B FC 2E E5 */ bl AddObject__11CObjectListFR7CEntity lbl_8004D0A4: /* 8004D0A4 0004A004 3B DE 00 08 */ addi r30, r30, 8 lbl_8004D0A8: /* 8004D0A8 0004A008 80 1C 08 08 */ lwz r0, 0x808(r28) /* 8004D0AC 0004A00C 54 00 18 38 */ slwi r0, r0, 3 /* 8004D0B0 0004A010 7C 1F 02 14 */ add r0, r31, r0 /* 8004D0B4 0004A014 7C 1E 00 40 */ cmplw r30, r0 /* 8004D0B8 0004A018 40 82 FF 68 */ bne lbl_8004D020 /* 8004D0BC 0004A01C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004D0C0 0004A020 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8004D0C4 0004A024 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8004D0C8 0004A028 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8004D0CC 0004A02C 83 81 00 20 */ lwz r28, 0x20(r1) /* 8004D0D0 0004A030 7C 08 03 A6 */ mtlr r0 /* 8004D0D4 0004A034 38 21 00 30 */ addi r1, r1, 0x30 /* 8004D0D8 0004A038 4E 80 00 20 */ blr .global AllocateUniqueId__13CStateManagerFv AllocateUniqueId__13CStateManagerFv: /* 8004D0DC 0004A03C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004D0E0 0004A040 7C 08 02 A6 */ mflr r0 /* 8004D0E4 0004A044 90 01 00 24 */ stw r0, 0x24(r1) /* 8004D0E8 0004A048 BF 61 00 0C */ stmw r27, 0xc(r1) /* 8004D0EC 0004A04C 7C 9B 23 78 */ mr r27, r4 /* 8004D0F0 0004A050 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004D0F4 0004A054 7C 7E 1B 78 */ mr r30, r3 /* 8004D0F8 0004A058 3B A4 CE E0 */ addi r29, r4, lbl_803CCEE0@l /* 8004D0FC 0004A05C A3 9B 00 00 */ lhz r28, 0(r27) lbl_8004D100: /* 8004D100 0004A060 A3 FB 00 00 */ lhz r31, 0(r27) /* 8004D104 0004A064 38 7F 00 01 */ addi r3, r31, 1 /* 8004D108 0004A068 54 60 B0 12 */ slwi r0, r3, 0x16 /* 8004D10C 0004A06C 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004D110 0004A070 7C 03 00 50 */ subf r0, r3, r0 /* 8004D114 0004A074 54 00 50 3E */ rotlwi r0, r0, 0xa /* 8004D118 0004A078 7C 00 1A 14 */ add r0, r0, r3 /* 8004D11C 0004A07C B0 1B 00 00 */ sth r0, 0(r27) /* 8004D120 0004A080 A0 1B 00 00 */ lhz r0, 0(r27) /* 8004D124 0004A084 7C 00 E0 40 */ cmplw r0, r28 /* 8004D128 0004A088 40 82 00 10 */ bne lbl_8004D138 /* 8004D12C 0004A08C 38 7D 00 16 */ addi r3, r29, 0x16 /* 8004D130 0004A090 4C C6 31 82 */ crclr 6 /* 8004D134 0004A094 48 28 96 F9 */ bl rs_debugger_printf__FPCce lbl_8004D138: /* 8004D138 0004A098 80 7B 08 10 */ lwz r3, 0x810(r27) /* 8004D13C 0004A09C 7F E4 FB 78 */ mr r4, r31 /* 8004D140 0004A0A0 4B FC 2B 8D */ bl GetObjectByIndex__11CObjectListCFi /* 8004D144 0004A0A4 28 03 00 00 */ cmplwi r3, 0 /* 8004D148 0004A0A8 40 82 FF B8 */ bne lbl_8004D100 /* 8004D14C 0004A0AC 57 E0 08 3C */ slwi r0, r31, 1 /* 8004D150 0004A0B0 7C 9B 02 14 */ add r4, r27, r0 /* 8004D154 0004A0B4 A0 64 00 08 */ lhz r3, 8(r4) /* 8004D158 0004A0B8 38 03 00 01 */ addi r0, r3, 1 /* 8004D15C 0004A0BC 54 00 06 BE */ clrlwi r0, r0, 0x1a /* 8004D160 0004A0C0 B0 04 00 08 */ sth r0, 8(r4) /* 8004D164 0004A0C4 A0 64 00 08 */ lhz r3, 8(r4) /* 8004D168 0004A0C8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004D16C 0004A0CC 54 63 51 AA */ rlwinm r3, r3, 0xa, 6, 0x15 /* 8004D170 0004A0D0 7F E3 1B 78 */ or r3, r31, r3 /* 8004D174 0004A0D4 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8004D178 0004A0D8 7C 03 00 40 */ cmplw r3, r0 /* 8004D17C 0004A0DC 40 82 00 0C */ bne lbl_8004D188 /* 8004D180 0004A0E0 38 00 00 00 */ li r0, 0 /* 8004D184 0004A0E4 B0 04 00 08 */ sth r0, 8(r4) lbl_8004D188: /* 8004D188 0004A0E8 A0 04 00 08 */ lhz r0, 8(r4) /* 8004D18C 0004A0EC 54 00 51 AA */ rlwinm r0, r0, 0xa, 6, 0x15 /* 8004D190 0004A0F0 7F E0 03 78 */ or r0, r31, r0 /* 8004D194 0004A0F4 B0 1E 00 00 */ sth r0, 0(r30) /* 8004D198 0004A0F8 BB 61 00 0C */ lmw r27, 0xc(r1) /* 8004D19C 0004A0FC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004D1A0 0004A100 7C 08 03 A6 */ mtlr r0 /* 8004D1A4 0004A104 38 21 00 20 */ addi r1, r1, 0x20 /* 8004D1A8 0004A108 4E 80 00 20 */ blr .global __dt__13CStateManagerFv __dt__13CStateManagerFv: /* 8004D1AC 0004A10C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8004D1B0 0004A110 7C 08 02 A6 */ mflr r0 /* 8004D1B4 0004A114 90 01 00 54 */ stw r0, 0x54(r1) /* 8004D1B8 0004A118 BF 41 00 38 */ stmw r26, 0x38(r1) /* 8004D1BC 0004A11C 7C 7D 1B 79 */ or. r29, r3, r3 /* 8004D1C0 0004A120 7C 9E 23 78 */ mr r30, r4 /* 8004D1C4 0004A124 41 82 04 D0 */ beq lbl_8004D694 /* 8004D1C8 0004A128 80 1D 08 08 */ lwz r0, 0x808(r29) /* 8004D1CC 0004A12C 1C 60 20 0C */ mulli r3, r0, 0x200c /* 8004D1D0 0004A130 38 03 01 1C */ addi r0, r3, 0x11c /* 8004D1D4 0004A134 7C 60 00 D0 */ neg r3, r0 /* 8004D1D8 0004A138 48 2C 86 E9 */ bl OffsetFakeStatics__7CMemoryFi /* 8004D1DC 0004A13C 80 7D 08 8C */ lwz r3, 0x88c(r29) /* 8004D1E0 0004A140 48 31 CB 6D */ bl HardStopAll__16CRumbleGeneratorFv /* 8004D1E4 0004A144 80 7D 08 80 */ lwz r3, 0x880(r29) /* 8004D1E8 0004A148 48 1C 54 DD */ bl sub_802126c4 /* 8004D1EC 0004A14C 38 1D 08 FC */ addi r0, r29, 0x8fc /* 8004D1F0 0004A150 3B FD 08 0C */ addi r31, r29, 0x80c /* 8004D1F4 0004A154 90 1D 09 00 */ stw r0, 0x900(r29) /* 8004D1F8 0004A158 7F A3 EB 78 */ mr r3, r29 /* 8004D1FC 0004A15C 83 7D 08 10 */ lwz r27, 0x810(r29) /* 8004D200 0004A160 4B FF EF 95 */ bl BringOutYourDead__13CStateManagerFv /* 8004D204 0004A164 3B 40 00 00 */ li r26, 0 lbl_8004D208: /* 8004D208 0004A168 7F 63 DB 78 */ mr r3, r27 /* 8004D20C 0004A16C 7F 44 D3 78 */ mr r4, r26 /* 8004D210 0004A170 4B FC 2B 05 */ bl __vc__11CObjectListFi /* 8004D214 0004A174 7C 7C 1B 79 */ or. r28, r3, r3 /* 8004D218 0004A178 41 82 00 74 */ beq lbl_8004D28C /* 8004D21C 0004A17C 80 9D 08 4C */ lwz r4, 0x84c(r29) /* 8004D220 0004A180 A0 BC 00 08 */ lhz r5, 8(r28) /* 8004D224 0004A184 A0 04 00 08 */ lhz r0, 8(r4) /* 8004D228 0004A188 7C 05 00 40 */ cmplw r5, r0 /* 8004D22C 0004A18C 41 82 00 60 */ beq lbl_8004D28C /* 8004D230 0004A190 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004D234 0004A194 7F A6 EB 78 */ mr r6, r29 /* 8004D238 0004A198 38 A1 00 1C */ addi r5, r1, 0x1c /* 8004D23C 0004A19C 38 80 00 22 */ li r4, 0x22 /* 8004D240 0004A1A0 B0 01 00 1C */ sth r0, 0x1c(r1) /* 8004D244 0004A1A4 81 83 00 00 */ lwz r12, 0(r3) /* 8004D248 0004A1A8 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D24C 0004A1AC 7D 89 03 A6 */ mtctr r12 /* 8004D250 0004A1B0 4E 80 04 21 */ bctrl /* 8004D254 0004A1B4 A0 1C 00 08 */ lhz r0, 8(r28) /* 8004D258 0004A1B8 7F A3 EB 78 */ mr r3, r29 /* 8004D25C 0004A1BC 38 81 00 18 */ addi r4, r1, 0x18 /* 8004D260 0004A1C0 B0 01 00 14 */ sth r0, 0x14(r1) /* 8004D264 0004A1C4 B0 01 00 18 */ sth r0, 0x18(r1) /* 8004D268 0004A1C8 4B FF EA 79 */ bl RemoveObject__13CStateManagerF9TUniqueId /* 8004D26C 0004A1CC 28 1C 00 00 */ cmplwi r28, 0 /* 8004D270 0004A1D0 41 82 00 1C */ beq lbl_8004D28C /* 8004D274 0004A1D4 7F 83 E3 78 */ mr r3, r28 /* 8004D278 0004A1D8 38 80 00 01 */ li r4, 1 /* 8004D27C 0004A1DC 81 9C 00 00 */ lwz r12, 0(r28) /* 8004D280 0004A1E0 81 8C 00 08 */ lwz r12, 8(r12) /* 8004D284 0004A1E4 7D 89 03 A6 */ mtctr r12 /* 8004D288 0004A1E8 4E 80 04 21 */ bctrl lbl_8004D28C: /* 8004D28C 0004A1EC 3B 5A 00 01 */ addi r26, r26, 1 /* 8004D290 0004A1F0 2C 1A 04 00 */ cmpwi r26, 0x400 /* 8004D294 0004A1F4 40 82 FF 74 */ bne lbl_8004D208 /* 8004D298 0004A1F8 7F A3 EB 78 */ mr r3, r29 /* 8004D29C 0004A1FC 4B FF EE F9 */ bl BringOutYourDead__13CStateManagerFv /* 8004D2A0 0004A200 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004D2A4 0004A204 7F A6 EB 78 */ mr r6, r29 /* 8004D2A8 0004A208 38 A1 00 10 */ addi r5, r1, 0x10 /* 8004D2AC 0004A20C 38 80 00 22 */ li r4, 0x22 /* 8004D2B0 0004A210 B0 01 00 10 */ sth r0, 0x10(r1) /* 8004D2B4 0004A214 80 7D 08 4C */ lwz r3, 0x84c(r29) /* 8004D2B8 0004A218 81 83 00 00 */ lwz r12, 0(r3) /* 8004D2BC 0004A21C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D2C0 0004A220 7D 89 03 A6 */ mtctr r12 /* 8004D2C4 0004A224 4E 80 04 21 */ bctrl /* 8004D2C8 0004A228 80 BD 08 4C */ lwz r5, 0x84c(r29) /* 8004D2CC 0004A22C 7F A3 EB 78 */ mr r3, r29 /* 8004D2D0 0004A230 38 81 00 0C */ addi r4, r1, 0xc /* 8004D2D4 0004A234 A0 05 00 08 */ lhz r0, 8(r5) /* 8004D2D8 0004A238 B0 01 00 08 */ sth r0, 8(r1) /* 8004D2DC 0004A23C B0 01 00 0C */ sth r0, 0xc(r1) /* 8004D2E0 0004A240 4B FF EA 01 */ bl RemoveObject__13CStateManagerF9TUniqueId /* 8004D2E4 0004A244 80 7D 08 4C */ lwz r3, 0x84c(r29) /* 8004D2E8 0004A248 28 03 00 00 */ cmplwi r3, 0 /* 8004D2EC 0004A24C 41 82 00 18 */ beq lbl_8004D304 /* 8004D2F0 0004A250 81 83 00 00 */ lwz r12, 0(r3) /* 8004D2F4 0004A254 38 80 00 01 */ li r4, 1 /* 8004D2F8 0004A258 81 8C 00 08 */ lwz r12, 8(r12) /* 8004D2FC 0004A25C 7D 89 03 A6 */ mtctr r12 /* 8004D300 0004A260 4E 80 04 21 */ bctrl lbl_8004D304: /* 8004D304 0004A264 38 00 00 00 */ li r0, 0 /* 8004D308 0004A268 90 1D 08 4C */ stw r0, 0x84c(r29) /* 8004D30C 0004A26C 48 28 15 8D */ bl Uninitialize__19CCollisionPrimitiveFv /* 8004D310 0004A270 38 60 00 00 */ li r3, 0 /* 8004D314 0004A274 38 80 00 00 */ li r4, 0 /* 8004D318 0004A278 48 2C 85 DD */ bl SetOutOfMemoryCallback__7CMemoryFPFPCvUi_CbPCv /* 8004D31C 0004A27C 34 1D 0F 70 */ addic. r0, r29, 0xf70 /* 8004D320 0004A280 41 82 00 0C */ beq lbl_8004D32C /* 8004D324 0004A284 80 7D 0F 70 */ lwz r3, 0xf70(r29) /* 8004D328 0004A288 48 2C 86 09 */ bl Free__7CMemoryFPCv lbl_8004D32C: /* 8004D32C 0004A28C 38 7D 0F 54 */ addi r3, r29, 0xf54 /* 8004D330 0004A290 38 80 FF FF */ li r4, -1 /* 8004D334 0004A294 48 00 32 01 */ bl sub_80050534 /* 8004D338 0004A298 38 7D 0F 3C */ addi r3, r29, 0xf3c /* 8004D33C 0004A29C 38 80 FF FF */ li r4, -1 /* 8004D340 0004A2A0 48 00 31 F5 */ bl sub_80050534 /* 8004D344 0004A2A4 38 7D 0D 14 */ addi r3, r29, 0xd14 /* 8004D348 0004A2A8 38 80 FF FF */ li r4, -1 /* 8004D34C 0004A2AC 48 00 0C F9 */ bl "__dt__Q24rstl36reserved_vector<15CCameraBlurPass,9>Fv" /* 8004D350 0004A2B0 34 1D 0B 84 */ addic. r0, r29, 0xb84 /* 8004D354 0004A2B4 41 82 00 6C */ beq lbl_8004D3C0 /* 8004D358 0004A2B8 3B 5D 0B 88 */ addi r26, r29, 0xb88 /* 8004D35C 0004A2BC 3B 80 00 00 */ li r28, 0 /* 8004D360 0004A2C0 48 00 00 4C */ b lbl_8004D3AC lbl_8004D364: /* 8004D364 0004A2C4 28 1A 00 00 */ cmplwi r26, 0 /* 8004D368 0004A2C8 41 82 00 3C */ beq lbl_8004D3A4 /* 8004D36C 0004A2CC 34 1A 00 24 */ addic. r0, r26, 0x24 /* 8004D370 0004A2D0 41 82 00 34 */ beq lbl_8004D3A4 /* 8004D374 0004A2D4 88 1A 00 24 */ lbz r0, 0x24(r26) /* 8004D378 0004A2D8 28 00 00 00 */ cmplwi r0, 0 /* 8004D37C 0004A2DC 41 82 00 28 */ beq lbl_8004D3A4 /* 8004D380 0004A2E0 83 7A 00 28 */ lwz r27, 0x28(r26) /* 8004D384 0004A2E4 28 1B 00 00 */ cmplwi r27, 0 /* 8004D388 0004A2E8 41 82 00 1C */ beq lbl_8004D3A4 /* 8004D38C 0004A2EC 41 82 00 10 */ beq lbl_8004D39C /* 8004D390 0004A2F0 7F 63 DB 78 */ mr r3, r27 /* 8004D394 0004A2F4 38 80 00 00 */ li r4, 0 /* 8004D398 0004A2F8 48 2F 3A A9 */ bl __dt__6CTokenFv lbl_8004D39C: /* 8004D39C 0004A2FC 7F 63 DB 78 */ mr r3, r27 /* 8004D3A0 0004A300 48 2C 85 91 */ bl Free__7CMemoryFPCv lbl_8004D3A4: /* 8004D3A4 0004A304 3B 5A 00 2C */ addi r26, r26, 0x2c /* 8004D3A8 0004A308 3B 9C 00 01 */ addi r28, r28, 1 lbl_8004D3AC: /* 8004D3AC 0004A30C 80 1D 0B 84 */ lwz r0, 0xb84(r29) /* 8004D3B0 0004A310 7C 1C 00 00 */ cmpw r28, r0 /* 8004D3B4 0004A314 41 80 FF B0 */ blt lbl_8004D364 /* 8004D3B8 0004A318 38 00 00 00 */ li r0, 0 /* 8004D3BC 0004A31C 90 1D 0B 84 */ stw r0, 0xb84(r29) lbl_8004D3C0: /* 8004D3C0 0004A320 34 1D 0B 40 */ addic. r0, r29, 0xb40 /* 8004D3C4 0004A324 41 82 00 34 */ beq lbl_8004D3F8 /* 8004D3C8 0004A328 34 1D 0B 40 */ addic. r0, r29, 0xb40 /* 8004D3CC 0004A32C 41 82 00 2C */ beq lbl_8004D3F8 /* 8004D3D0 0004A330 80 9D 0B 50 */ lwz r4, 0xb50(r29) /* 8004D3D4 0004A334 28 04 00 00 */ cmplwi r4, 0 /* 8004D3D8 0004A338 41 82 00 0C */ beq lbl_8004D3E4 /* 8004D3DC 0004A33C 38 7D 0B 40 */ addi r3, r29, 0xb40 /* 8004D3E0 0004A340 48 00 21 DD */ bl sub_8004f5bc lbl_8004D3E4: /* 8004D3E4 0004A344 38 00 00 00 */ li r0, 0 /* 8004D3E8 0004A348 90 1D 0B 50 */ stw r0, 0xb50(r29) /* 8004D3EC 0004A34C 90 1D 0B 48 */ stw r0, 0xb48(r29) /* 8004D3F0 0004A350 90 1D 0B 4C */ stw r0, 0xb4c(r29) /* 8004D3F4 0004A354 90 1D 0B 44 */ stw r0, 0xb44(r29) lbl_8004D3F8: /* 8004D3F8 0004A358 34 1D 09 08 */ addic. r0, r29, 0x908 /* 8004D3FC 0004A35C 41 82 00 58 */ beq lbl_8004D454 /* 8004D400 0004A360 80 BD 09 08 */ lwz r5, 0x908(r29) /* 8004D404 0004A364 38 60 00 00 */ li r3, 0 /* 8004D408 0004A368 2C 05 00 00 */ cmpwi r5, 0 /* 8004D40C 0004A36C 40 81 00 40 */ ble lbl_8004D44C /* 8004D410 0004A370 2C 05 00 08 */ cmpwi r5, 8 /* 8004D414 0004A374 38 85 FF F8 */ addi r4, r5, -8 /* 8004D418 0004A378 40 81 00 20 */ ble lbl_8004D438 /* 8004D41C 0004A37C 38 04 00 07 */ addi r0, r4, 7 /* 8004D420 0004A380 54 00 E8 FE */ srwi r0, r0, 3 /* 8004D424 0004A384 7C 09 03 A6 */ mtctr r0 /* 8004D428 0004A388 2C 04 00 00 */ cmpwi r4, 0 /* 8004D42C 0004A38C 40 81 00 0C */ ble lbl_8004D438 lbl_8004D430: /* 8004D430 0004A390 38 63 00 08 */ addi r3, r3, 8 /* 8004D434 0004A394 42 00 FF FC */ bdnz lbl_8004D430 lbl_8004D438: /* 8004D438 0004A398 7C 03 28 50 */ subf r0, r3, r5 /* 8004D43C 0004A39C 7C 09 03 A6 */ mtctr r0 /* 8004D440 0004A3A0 7C 03 28 00 */ cmpw r3, r5 /* 8004D444 0004A3A4 40 80 00 08 */ bge lbl_8004D44C lbl_8004D448: /* 8004D448 0004A3A8 42 00 00 00 */ bdnz lbl_8004D448 lbl_8004D44C: /* 8004D44C 0004A3AC 38 00 00 00 */ li r0, 0 /* 8004D450 0004A3B0 90 1D 09 08 */ stw r0, 0x908(r29) lbl_8004D454: /* 8004D454 0004A3B4 34 1D 08 F0 */ addic. r0, r29, 0x8f0 /* 8004D458 0004A3B8 41 82 00 18 */ beq lbl_8004D470 /* 8004D45C 0004A3BC 34 1D 08 F0 */ addic. r0, r29, 0x8f0 /* 8004D460 0004A3C0 41 82 00 10 */ beq lbl_8004D470 /* 8004D464 0004A3C4 38 7D 08 F0 */ addi r3, r29, 0x8f0 /* 8004D468 0004A3C8 38 80 00 00 */ li r4, 0 /* 8004D46C 0004A3CC 48 2F 39 D5 */ bl __dt__6CTokenFv lbl_8004D470: /* 8004D470 0004A3D0 34 1D 08 E0 */ addic. r0, r29, 0x8e0 /* 8004D474 0004A3D4 41 82 00 44 */ beq lbl_8004D4B8 /* 8004D478 0004A3D8 80 1D 08 E4 */ lwz r0, 0x8e4(r29) /* 8004D47C 0004A3DC 80 7D 08 EC */ lwz r3, 0x8ec(r29) /* 8004D480 0004A3E0 1C 00 00 50 */ mulli r0, r0, 0x50 /* 8004D484 0004A3E4 90 61 00 24 */ stw r3, 0x24(r1) /* 8004D488 0004A3E8 7C 64 1B 78 */ mr r4, r3 /* 8004D48C 0004A3EC 7C 03 02 14 */ add r0, r3, r0 /* 8004D490 0004A3F0 90 61 00 20 */ stw r3, 0x20(r1) /* 8004D494 0004A3F4 90 01 00 2C */ stw r0, 0x2c(r1) /* 8004D498 0004A3F8 90 01 00 28 */ stw r0, 0x28(r1) /* 8004D49C 0004A3FC 48 00 00 08 */ b lbl_8004D4A4 lbl_8004D4A0: /* 8004D4A0 0004A400 38 84 00 50 */ addi r4, r4, 0x50 lbl_8004D4A4: /* 8004D4A4 0004A404 7C 04 00 40 */ cmplw r4, r0 /* 8004D4A8 0004A408 40 82 FF F8 */ bne lbl_8004D4A0 /* 8004D4AC 0004A40C 28 03 00 00 */ cmplwi r3, 0 /* 8004D4B0 0004A410 41 82 00 08 */ beq lbl_8004D4B8 /* 8004D4B4 0004A414 48 2C 84 7D */ bl Free__7CMemoryFPCv lbl_8004D4B8: /* 8004D4B8 0004A418 34 1D 08 C8 */ addic. r0, r29, 0x8c8 /* 8004D4BC 0004A41C 41 82 00 14 */ beq lbl_8004D4D0 /* 8004D4C0 0004A420 34 1D 08 C8 */ addic. r0, r29, 0x8c8 /* 8004D4C4 0004A424 41 82 00 0C */ beq lbl_8004D4D0 /* 8004D4C8 0004A428 38 7D 08 C8 */ addi r3, r29, 0x8c8 /* 8004D4CC 0004A42C 4B FB B9 01 */ bl sub_80008dcc lbl_8004D4D0: /* 8004D4D0 0004A430 34 1D 08 C4 */ addic. r0, r29, 0x8c4 /* 8004D4D4 0004A434 41 82 00 14 */ beq lbl_8004D4E8 /* 8004D4D8 0004A438 34 1D 08 C4 */ addic. r0, r29, 0x8c4 /* 8004D4DC 0004A43C 41 82 00 0C */ beq lbl_8004D4E8 /* 8004D4E0 0004A440 38 7D 08 C4 */ addi r3, r29, 0x8c4 /* 8004D4E4 0004A444 4B FB B1 01 */ bl sub_800085e4 lbl_8004D4E8: /* 8004D4E8 0004A448 34 1D 08 C0 */ addic. r0, r29, 0x8c0 /* 8004D4EC 0004A44C 41 82 00 14 */ beq lbl_8004D500 /* 8004D4F0 0004A450 34 1D 08 C0 */ addic. r0, r29, 0x8c0 /* 8004D4F4 0004A454 41 82 00 0C */ beq lbl_8004D500 /* 8004D4F8 0004A458 38 7D 08 C0 */ addi r3, r29, 0x8c0 /* 8004D4FC 0004A45C 4B FB B7 41 */ bl sub_80008c3c lbl_8004D500: /* 8004D500 0004A460 34 1D 08 BC */ addic. r0, r29, 0x8bc /* 8004D504 0004A464 41 82 00 14 */ beq lbl_8004D518 /* 8004D508 0004A468 34 1D 08 BC */ addic. r0, r29, 0x8bc /* 8004D50C 0004A46C 41 82 00 0C */ beq lbl_8004D518 /* 8004D510 0004A470 38 7D 08 BC */ addi r3, r29, 0x8bc /* 8004D514 0004A474 4B FB B1 2D */ bl __dt__11CWorldStateFv lbl_8004D518: /* 8004D518 0004A478 34 1D 08 B8 */ addic. r0, r29, 0x8b8 /* 8004D51C 0004A47C 41 82 00 14 */ beq lbl_8004D530 /* 8004D520 0004A480 34 1D 08 B8 */ addic. r0, r29, 0x8b8 /* 8004D524 0004A484 41 82 00 0C */ beq lbl_8004D530 /* 8004D528 0004A488 38 7D 08 B8 */ addi r3, r29, 0x8b8 /* 8004D52C 0004A48C 4B FB B9 E1 */ bl sub_80008f0c lbl_8004D530: /* 8004D530 0004A490 34 1D 08 A4 */ addic. r0, r29, 0x8a4 /* 8004D534 0004A494 41 82 00 34 */ beq lbl_8004D568 /* 8004D538 0004A498 34 1D 08 A4 */ addic. r0, r29, 0x8a4 /* 8004D53C 0004A49C 41 82 00 2C */ beq lbl_8004D568 /* 8004D540 0004A4A0 80 9D 08 B4 */ lwz r4, 0x8b4(r29) /* 8004D544 0004A4A4 28 04 00 00 */ cmplwi r4, 0 /* 8004D548 0004A4A8 41 82 00 0C */ beq lbl_8004D554 /* 8004D54C 0004A4AC 38 7D 08 A4 */ addi r3, r29, 0x8a4 /* 8004D550 0004A4B0 48 00 1F 9D */ bl sub_8004f4ec lbl_8004D554: /* 8004D554 0004A4B4 38 00 00 00 */ li r0, 0 /* 8004D558 0004A4B8 90 1D 08 B4 */ stw r0, 0x8b4(r29) /* 8004D55C 0004A4BC 90 1D 08 AC */ stw r0, 0x8ac(r29) /* 8004D560 0004A4C0 90 1D 08 B0 */ stw r0, 0x8b0(r29) /* 8004D564 0004A4C4 90 1D 08 A8 */ stw r0, 0x8a8(r29) lbl_8004D568: /* 8004D568 0004A4C8 34 1D 08 90 */ addic. r0, r29, 0x890 /* 8004D56C 0004A4CC 41 82 00 34 */ beq lbl_8004D5A0 /* 8004D570 0004A4D0 34 1D 08 90 */ addic. r0, r29, 0x890 /* 8004D574 0004A4D4 41 82 00 2C */ beq lbl_8004D5A0 /* 8004D578 0004A4D8 80 9D 08 A0 */ lwz r4, 0x8a0(r29) /* 8004D57C 0004A4DC 28 04 00 00 */ cmplwi r4, 0 /* 8004D580 0004A4E0 41 82 00 0C */ beq lbl_8004D58C /* 8004D584 0004A4E4 38 7D 08 90 */ addi r3, r29, 0x890 /* 8004D588 0004A4E8 48 00 1F CD */ bl sub_8004f554 lbl_8004D58C: /* 8004D58C 0004A4EC 38 00 00 00 */ li r0, 0 /* 8004D590 0004A4F0 90 1D 08 A0 */ stw r0, 0x8a0(r29) /* 8004D594 0004A4F4 90 1D 08 98 */ stw r0, 0x898(r29) /* 8004D598 0004A4F8 90 1D 08 9C */ stw r0, 0x89c(r29) /* 8004D59C 0004A4FC 90 1D 08 94 */ stw r0, 0x894(r29) lbl_8004D5A0: /* 8004D5A0 0004A500 38 7D 08 6C */ addi r3, r29, 0x86c /* 8004D5A4 0004A504 38 80 FF FF */ li r4, -1 /* 8004D5A8 0004A508 48 00 01 05 */ bl sub_8004d6ac /* 8004D5AC 0004A50C 38 7D 08 54 */ addi r3, r29, 0x854 /* 8004D5B0 0004A510 38 80 FF FF */ li r4, -1 /* 8004D5B4 0004A514 48 00 30 D1 */ bl sub_80050684 /* 8004D5B8 0004A518 34 1D 08 50 */ addic. r0, r29, 0x850 /* 8004D5BC 0004A51C 41 82 00 24 */ beq lbl_8004D5E0 /* 8004D5C0 0004A520 80 7D 08 50 */ lwz r3, 0x850(r29) /* 8004D5C4 0004A524 28 03 00 00 */ cmplwi r3, 0 /* 8004D5C8 0004A528 41 82 00 18 */ beq lbl_8004D5E0 /* 8004D5CC 0004A52C 81 83 00 00 */ lwz r12, 0(r3) /* 8004D5D0 0004A530 38 80 00 01 */ li r4, 1 /* 8004D5D4 0004A534 81 8C 00 08 */ lwz r12, 8(r12) /* 8004D5D8 0004A538 7D 89 03 A6 */ mtctr r12 /* 8004D5DC 0004A53C 4E 80 04 21 */ bctrl lbl_8004D5E0: /* 8004D5E0 0004A540 34 1D 08 08 */ addic. r0, r29, 0x808 /* 8004D5E4 0004A544 41 82 00 44 */ beq lbl_8004D628 /* 8004D5E8 0004A548 3B 80 00 00 */ li r28, 0 /* 8004D5EC 0004A54C 48 00 00 28 */ b lbl_8004D614 lbl_8004D5F0: /* 8004D5F0 0004A550 28 1F 00 00 */ cmplwi r31, 0 /* 8004D5F4 0004A554 41 82 00 18 */ beq lbl_8004D60C /* 8004D5F8 0004A558 88 1F 00 00 */ lbz r0, 0(r31) /* 8004D5FC 0004A55C 28 00 00 00 */ cmplwi r0, 0 /* 8004D600 0004A560 41 82 00 0C */ beq lbl_8004D60C /* 8004D604 0004A564 80 7F 00 04 */ lwz r3, 4(r31) /* 8004D608 0004A568 48 2C 83 29 */ bl Free__7CMemoryFPCv lbl_8004D60C: /* 8004D60C 0004A56C 3B FF 00 08 */ addi r31, r31, 8 /* 8004D610 0004A570 3B 9C 00 01 */ addi r28, r28, 1 lbl_8004D614: /* 8004D614 0004A574 80 1D 08 08 */ lwz r0, 0x808(r29) /* 8004D618 0004A578 7C 1C 00 00 */ cmpw r28, r0 /* 8004D61C 0004A57C 41 80 FF D4 */ blt lbl_8004D5F0 /* 8004D620 0004A580 38 00 00 00 */ li r0, 0 /* 8004D624 0004A584 90 1D 08 08 */ stw r0, 0x808(r29) lbl_8004D628: /* 8004D628 0004A588 34 1D 00 04 */ addic. r0, r29, 4 /* 8004D62C 0004A58C 41 82 00 58 */ beq lbl_8004D684 /* 8004D630 0004A590 80 BD 00 04 */ lwz r5, 4(r29) /* 8004D634 0004A594 38 60 00 00 */ li r3, 0 /* 8004D638 0004A598 2C 05 00 00 */ cmpwi r5, 0 /* 8004D63C 0004A59C 40 81 00 40 */ ble lbl_8004D67C /* 8004D640 0004A5A0 2C 05 00 08 */ cmpwi r5, 8 /* 8004D644 0004A5A4 38 85 FF F8 */ addi r4, r5, -8 /* 8004D648 0004A5A8 40 81 00 20 */ ble lbl_8004D668 /* 8004D64C 0004A5AC 38 04 00 07 */ addi r0, r4, 7 /* 8004D650 0004A5B0 54 00 E8 FE */ srwi r0, r0, 3 /* 8004D654 0004A5B4 7C 09 03 A6 */ mtctr r0 /* 8004D658 0004A5B8 2C 04 00 00 */ cmpwi r4, 0 /* 8004D65C 0004A5BC 40 81 00 0C */ ble lbl_8004D668 lbl_8004D660: /* 8004D660 0004A5C0 38 63 00 08 */ addi r3, r3, 8 /* 8004D664 0004A5C4 42 00 FF FC */ bdnz lbl_8004D660 lbl_8004D668: /* 8004D668 0004A5C8 7C 03 28 50 */ subf r0, r3, r5 /* 8004D66C 0004A5CC 7C 09 03 A6 */ mtctr r0 /* 8004D670 0004A5D0 7C 03 28 00 */ cmpw r3, r5 /* 8004D674 0004A5D4 40 80 00 08 */ bge lbl_8004D67C lbl_8004D678: /* 8004D678 0004A5D8 42 00 00 00 */ bdnz lbl_8004D678 lbl_8004D67C: /* 8004D67C 0004A5DC 38 00 00 00 */ li r0, 0 /* 8004D680 0004A5E0 90 1D 00 04 */ stw r0, 4(r29) lbl_8004D684: /* 8004D684 0004A5E4 7F C0 07 35 */ extsh. r0, r30 /* 8004D688 0004A5E8 40 81 00 0C */ ble lbl_8004D694 /* 8004D68C 0004A5EC 7F A3 EB 78 */ mr r3, r29 /* 8004D690 0004A5F0 48 00 20 39 */ bl "__dl__27TOneStatic<13CStateManager>FPv" lbl_8004D694: /* 8004D694 0004A5F4 7F A3 EB 78 */ mr r3, r29 /* 8004D698 0004A5F8 BB 41 00 38 */ lmw r26, 0x38(r1) /* 8004D69C 0004A5FC 80 01 00 54 */ lwz r0, 0x54(r1) /* 8004D6A0 0004A600 7C 08 03 A6 */ mtlr r0 /* 8004D6A4 0004A604 38 21 00 50 */ addi r1, r1, 0x50 /* 8004D6A8 0004A608 4E 80 00 20 */ blr .global sub_8004d6ac sub_8004d6ac: /* 8004D6AC 0004A60C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004D6B0 0004A610 7C 08 02 A6 */ mflr r0 /* 8004D6B4 0004A614 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D6B8 0004A618 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004D6BC 0004A61C 7C 9F 23 78 */ mr r31, r4 /* 8004D6C0 0004A620 93 C1 00 08 */ stw r30, 8(r1) /* 8004D6C4 0004A624 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004D6C8 0004A628 41 82 00 20 */ beq lbl_8004D6E8 /* 8004D6CC 0004A62C 80 7E 00 00 */ lwz r3, 0(r30) /* 8004D6D0 0004A630 38 80 00 01 */ li r4, 1 /* 8004D6D4 0004A634 48 00 00 31 */ bl __dt__22CStateManagerContainerFv /* 8004D6D8 0004A638 7F E0 07 35 */ extsh. r0, r31 /* 8004D6DC 0004A63C 40 81 00 0C */ ble lbl_8004D6E8 /* 8004D6E0 0004A640 7F C3 F3 78 */ mr r3, r30 /* 8004D6E4 0004A644 48 2C 82 4D */ bl Free__7CMemoryFPCv lbl_8004D6E8: /* 8004D6E8 0004A648 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004D6EC 0004A64C 7F C3 F3 78 */ mr r3, r30 /* 8004D6F0 0004A650 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004D6F4 0004A654 83 C1 00 08 */ lwz r30, 8(r1) /* 8004D6F8 0004A658 7C 08 03 A6 */ mtlr r0 /* 8004D6FC 0004A65C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004D700 0004A660 4E 80 00 20 */ blr .global __dt__22CStateManagerContainerFv __dt__22CStateManagerContainerFv: /* 8004D704 0004A664 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004D708 0004A668 7C 08 02 A6 */ mflr r0 /* 8004D70C 0004A66C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D710 0004A670 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004D714 0004A674 7C 9F 23 78 */ mr r31, r4 /* 8004D718 0004A678 93 C1 00 08 */ stw r30, 8(r1) /* 8004D71C 0004A67C 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004D720 0004A680 41 82 01 D4 */ beq lbl_8004D8F4 /* 8004D724 0004A684 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D728 0004A688 34 03 F3 9C */ addic. r0, r3, -3172 /* 8004D72C 0004A68C 41 82 00 5C */ beq lbl_8004D788 /* 8004D730 0004A690 80 A3 F3 9C */ lwz r5, -0xc64(r3) /* 8004D734 0004A694 38 60 00 00 */ li r3, 0 /* 8004D738 0004A698 2C 05 00 00 */ cmpwi r5, 0 /* 8004D73C 0004A69C 40 81 00 40 */ ble lbl_8004D77C /* 8004D740 0004A6A0 2C 05 00 08 */ cmpwi r5, 8 /* 8004D744 0004A6A4 38 85 FF F8 */ addi r4, r5, -8 /* 8004D748 0004A6A8 40 81 00 20 */ ble lbl_8004D768 /* 8004D74C 0004A6AC 38 04 00 07 */ addi r0, r4, 7 /* 8004D750 0004A6B0 54 00 E8 FE */ srwi r0, r0, 3 /* 8004D754 0004A6B4 7C 09 03 A6 */ mtctr r0 /* 8004D758 0004A6B8 2C 04 00 00 */ cmpwi r4, 0 /* 8004D75C 0004A6BC 40 81 00 0C */ ble lbl_8004D768 lbl_8004D760: /* 8004D760 0004A6C0 38 63 00 08 */ addi r3, r3, 8 /* 8004D764 0004A6C4 42 00 FF FC */ bdnz lbl_8004D760 lbl_8004D768: /* 8004D768 0004A6C8 7C 03 28 50 */ subf r0, r3, r5 /* 8004D76C 0004A6CC 7C 09 03 A6 */ mtctr r0 /* 8004D770 0004A6D0 7C 03 28 00 */ cmpw r3, r5 /* 8004D774 0004A6D4 40 80 00 08 */ bge lbl_8004D77C lbl_8004D778: /* 8004D778 0004A6D8 42 00 00 00 */ bdnz lbl_8004D778 lbl_8004D77C: /* 8004D77C 0004A6DC 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D780 0004A6E0 38 00 00 00 */ li r0, 0 /* 8004D784 0004A6E4 90 03 F3 9C */ stw r0, -0xc64(r3) lbl_8004D788: /* 8004D788 0004A6E8 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D78C 0004A6EC 34 03 F3 70 */ addic. r0, r3, -3216 /* 8004D790 0004A6F0 41 82 00 5C */ beq lbl_8004D7EC /* 8004D794 0004A6F4 80 A3 F3 70 */ lwz r5, -0xc90(r3) /* 8004D798 0004A6F8 38 60 00 00 */ li r3, 0 /* 8004D79C 0004A6FC 2C 05 00 00 */ cmpwi r5, 0 /* 8004D7A0 0004A700 40 81 00 40 */ ble lbl_8004D7E0 /* 8004D7A4 0004A704 2C 05 00 08 */ cmpwi r5, 8 /* 8004D7A8 0004A708 38 85 FF F8 */ addi r4, r5, -8 /* 8004D7AC 0004A70C 40 81 00 20 */ ble lbl_8004D7CC /* 8004D7B0 0004A710 38 04 00 07 */ addi r0, r4, 7 /* 8004D7B4 0004A714 54 00 E8 FE */ srwi r0, r0, 3 /* 8004D7B8 0004A718 7C 09 03 A6 */ mtctr r0 /* 8004D7BC 0004A71C 2C 04 00 00 */ cmpwi r4, 0 /* 8004D7C0 0004A720 40 81 00 0C */ ble lbl_8004D7CC lbl_8004D7C4: /* 8004D7C4 0004A724 38 63 00 08 */ addi r3, r3, 8 /* 8004D7C8 0004A728 42 00 FF FC */ bdnz lbl_8004D7C4 lbl_8004D7CC: /* 8004D7CC 0004A72C 7C 03 28 50 */ subf r0, r3, r5 /* 8004D7D0 0004A730 7C 09 03 A6 */ mtctr r0 /* 8004D7D4 0004A734 7C 03 28 00 */ cmpw r3, r5 /* 8004D7D8 0004A738 40 80 00 08 */ bge lbl_8004D7E0 lbl_8004D7DC: /* 8004D7DC 0004A73C 42 00 00 00 */ bdnz lbl_8004D7DC lbl_8004D7E0: /* 8004D7E0 0004A740 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D7E4 0004A744 38 00 00 00 */ li r0, 0 /* 8004D7E8 0004A748 90 03 F3 70 */ stw r0, -0xc90(r3) lbl_8004D7EC: /* 8004D7EC 0004A74C 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D7F0 0004A750 34 03 F3 44 */ addic. r0, r3, -3260 /* 8004D7F4 0004A754 41 82 00 5C */ beq lbl_8004D850 /* 8004D7F8 0004A758 80 A3 F3 44 */ lwz r5, -0xcbc(r3) /* 8004D7FC 0004A75C 38 60 00 00 */ li r3, 0 /* 8004D800 0004A760 2C 05 00 00 */ cmpwi r5, 0 /* 8004D804 0004A764 40 81 00 40 */ ble lbl_8004D844 /* 8004D808 0004A768 2C 05 00 08 */ cmpwi r5, 8 /* 8004D80C 0004A76C 38 85 FF F8 */ addi r4, r5, -8 /* 8004D810 0004A770 40 81 00 20 */ ble lbl_8004D830 /* 8004D814 0004A774 38 04 00 07 */ addi r0, r4, 7 /* 8004D818 0004A778 54 00 E8 FE */ srwi r0, r0, 3 /* 8004D81C 0004A77C 7C 09 03 A6 */ mtctr r0 /* 8004D820 0004A780 2C 04 00 00 */ cmpwi r4, 0 /* 8004D824 0004A784 40 81 00 0C */ ble lbl_8004D830 lbl_8004D828: /* 8004D828 0004A788 38 63 00 08 */ addi r3, r3, 8 /* 8004D82C 0004A78C 42 00 FF FC */ bdnz lbl_8004D828 lbl_8004D830: /* 8004D830 0004A790 7C 03 28 50 */ subf r0, r3, r5 /* 8004D834 0004A794 7C 09 03 A6 */ mtctr r0 /* 8004D838 0004A798 7C 03 28 00 */ cmpw r3, r5 /* 8004D83C 0004A79C 40 80 00 08 */ bge lbl_8004D844 lbl_8004D840: /* 8004D840 0004A7A0 42 00 00 00 */ bdnz lbl_8004D840 lbl_8004D844: /* 8004D844 0004A7A4 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D848 0004A7A8 38 00 00 00 */ li r0, 0 /* 8004D84C 0004A7AC 90 03 F3 44 */ stw r0, -0xcbc(r3) lbl_8004D850: /* 8004D850 0004A7B0 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D854 0004A7B4 38 80 FF FF */ li r4, -1 /* 8004D858 0004A7B8 38 63 F2 50 */ addi r3, r3, -3504 /* 8004D85C 0004A7BC 48 1E 0A 39 */ bl __dt__14CRumbleManagerFv /* 8004D860 0004A7C0 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D864 0004A7C4 38 80 FF FF */ li r4, -1 /* 8004D868 0004A7C8 38 63 F1 68 */ addi r3, r3, -3736 /* 8004D86C 0004A7CC 48 00 05 F9 */ bl __dt__20CActorModelParticlesFv /* 8004D870 0004A7D0 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D874 0004A7D4 38 80 FF FF */ li r4, -1 /* 8004D878 0004A7D8 38 63 E5 10 */ addi r3, r3, -6896 /* 8004D87C 0004A7DC 48 00 03 41 */ bl __dt__13CEnvFxManagerFv /* 8004D880 0004A7E0 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D884 0004A7E4 38 80 FF FF */ li r4, -1 /* 8004D888 0004A7E8 38 63 E3 EC */ addi r3, r3, -7188 /* 8004D88C 0004A7EC 48 00 02 39 */ bl __dt__18CFluidPlaneManagerFv /* 8004D890 0004A7F0 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D894 0004A7F4 34 03 E3 D8 */ addic. r0, r3, -7208 /* 8004D898 0004A7F8 41 82 00 40 */ beq lbl_8004D8D8 /* 8004D89C 0004A7FC 34 03 E3 D8 */ addic. r0, r3, -7208 /* 8004D8A0 0004A800 41 82 00 38 */ beq lbl_8004D8D8 /* 8004D8A4 0004A804 34 03 E3 D8 */ addic. r0, r3, -7208 /* 8004D8A8 0004A808 41 82 00 30 */ beq lbl_8004D8D8 /* 8004D8AC 0004A80C 80 83 E3 E8 */ lwz r4, -0x1c18(r3) /* 8004D8B0 0004A810 28 04 00 00 */ cmplwi r4, 0 /* 8004D8B4 0004A814 41 82 00 0C */ beq lbl_8004D8C0 /* 8004D8B8 0004A818 38 63 E3 D8 */ addi r3, r3, -7208 /* 8004D8BC 0004A81C 48 00 28 75 */ bl __dt__10CWeaponMgrFv lbl_8004D8C0: /* 8004D8C0 0004A820 3C 7E 00 01 */ addis r3, r30, 1 /* 8004D8C4 0004A824 38 00 00 00 */ li r0, 0 /* 8004D8C8 0004A828 90 03 E3 E8 */ stw r0, -0x1c18(r3) /* 8004D8CC 0004A82C 90 03 E3 E0 */ stw r0, -0x1c20(r3) /* 8004D8D0 0004A830 90 03 E3 E4 */ stw r0, -0x1c1c(r3) /* 8004D8D4 0004A834 90 03 E3 DC */ stw r0, -0x1c24(r3) lbl_8004D8D8: /* 8004D8D8 0004A838 7F C3 F3 78 */ mr r3, r30 /* 8004D8DC 0004A83C 38 80 FF FF */ li r4, -1 /* 8004D8E0 0004A840 48 00 00 31 */ bl __dt__14CCameraManagerFv /* 8004D8E4 0004A844 7F E0 07 35 */ extsh. r0, r31 /* 8004D8E8 0004A848 40 81 00 0C */ ble lbl_8004D8F4 /* 8004D8EC 0004A84C 7F C3 F3 78 */ mr r3, r30 /* 8004D8F0 0004A850 48 00 1D 7D */ bl "__dl__36TOneStatic<22CStateManagerContainer>FPv" lbl_8004D8F4: /* 8004D8F4 0004A854 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004D8F8 0004A858 7F C3 F3 78 */ mr r3, r30 /* 8004D8FC 0004A85C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004D900 0004A860 83 C1 00 08 */ lwz r30, 8(r1) /* 8004D904 0004A864 7C 08 03 A6 */ mtlr r0 /* 8004D908 0004A868 38 21 00 10 */ addi r1, r1, 0x10 /* 8004D90C 0004A86C 4E 80 00 20 */ blr .global __dt__14CCameraManagerFv __dt__14CCameraManagerFv: /* 8004D910 0004A870 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004D914 0004A874 7C 08 02 A6 */ mflr r0 /* 8004D918 0004A878 90 01 00 24 */ stw r0, 0x24(r1) /* 8004D91C 0004A87C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004D920 0004A880 7C 9F 23 78 */ mr r31, r4 /* 8004D924 0004A884 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004D928 0004A888 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004D92C 0004A88C 41 82 01 7C */ beq lbl_8004DAA8 /* 8004D930 0004A890 34 1E 03 34 */ addic. r0, r30, 0x334 /* 8004D934 0004A894 41 82 00 58 */ beq lbl_8004D98C /* 8004D938 0004A898 80 BE 03 34 */ lwz r5, 0x334(r30) /* 8004D93C 0004A89C 38 60 00 00 */ li r3, 0 /* 8004D940 0004A8A0 2C 05 00 00 */ cmpwi r5, 0 /* 8004D944 0004A8A4 40 81 00 40 */ ble lbl_8004D984 /* 8004D948 0004A8A8 2C 05 00 08 */ cmpwi r5, 8 /* 8004D94C 0004A8AC 38 85 FF F8 */ addi r4, r5, -8 /* 8004D950 0004A8B0 40 81 00 20 */ ble lbl_8004D970 /* 8004D954 0004A8B4 38 04 00 07 */ addi r0, r4, 7 /* 8004D958 0004A8B8 54 00 E8 FE */ srwi r0, r0, 3 /* 8004D95C 0004A8BC 7C 09 03 A6 */ mtctr r0 /* 8004D960 0004A8C0 2C 04 00 00 */ cmpwi r4, 0 /* 8004D964 0004A8C4 40 81 00 0C */ ble lbl_8004D970 lbl_8004D968: /* 8004D968 0004A8C8 38 63 00 08 */ addi r3, r3, 8 /* 8004D96C 0004A8CC 42 00 FF FC */ bdnz lbl_8004D968 lbl_8004D970: /* 8004D970 0004A8D0 7C 03 28 50 */ subf r0, r3, r5 /* 8004D974 0004A8D4 7C 09 03 A6 */ mtctr r0 /* 8004D978 0004A8D8 7C 03 28 00 */ cmpw r3, r5 /* 8004D97C 0004A8DC 40 80 00 08 */ bge lbl_8004D984 lbl_8004D980: /* 8004D980 0004A8E0 42 00 00 00 */ bdnz lbl_8004D980 lbl_8004D984: /* 8004D984 0004A8E4 38 00 00 00 */ li r0, 0 /* 8004D988 0004A8E8 90 1E 03 34 */ stw r0, 0x334(r30) lbl_8004D98C: /* 8004D98C 0004A8EC 34 1E 02 B0 */ addic. r0, r30, 0x2b0 /* 8004D990 0004A8F0 41 82 00 58 */ beq lbl_8004D9E8 /* 8004D994 0004A8F4 80 BE 02 B0 */ lwz r5, 0x2b0(r30) /* 8004D998 0004A8F8 38 60 00 00 */ li r3, 0 /* 8004D99C 0004A8FC 2C 05 00 00 */ cmpwi r5, 0 /* 8004D9A0 0004A900 40 81 00 40 */ ble lbl_8004D9E0 /* 8004D9A4 0004A904 2C 05 00 08 */ cmpwi r5, 8 /* 8004D9A8 0004A908 38 85 FF F8 */ addi r4, r5, -8 /* 8004D9AC 0004A90C 40 81 00 20 */ ble lbl_8004D9CC /* 8004D9B0 0004A910 38 04 00 07 */ addi r0, r4, 7 /* 8004D9B4 0004A914 54 00 E8 FE */ srwi r0, r0, 3 /* 8004D9B8 0004A918 7C 09 03 A6 */ mtctr r0 /* 8004D9BC 0004A91C 2C 04 00 00 */ cmpwi r4, 0 /* 8004D9C0 0004A920 40 81 00 0C */ ble lbl_8004D9CC lbl_8004D9C4: /* 8004D9C4 0004A924 38 63 00 08 */ addi r3, r3, 8 /* 8004D9C8 0004A928 42 00 FF FC */ bdnz lbl_8004D9C4 lbl_8004D9CC: /* 8004D9CC 0004A92C 7C 03 28 50 */ subf r0, r3, r5 /* 8004D9D0 0004A930 7C 09 03 A6 */ mtctr r0 /* 8004D9D4 0004A934 7C 03 28 00 */ cmpw r3, r5 /* 8004D9D8 0004A938 40 80 00 08 */ bge lbl_8004D9E0 lbl_8004D9DC: /* 8004D9DC 0004A93C 42 00 00 00 */ bdnz lbl_8004D9DC lbl_8004D9E0: /* 8004D9E0 0004A940 38 00 00 00 */ li r0, 0 /* 8004D9E4 0004A944 90 1E 02 B0 */ stw r0, 0x2b0(r30) lbl_8004D9E8: /* 8004D9E8 0004A948 34 1E 00 AC */ addic. r0, r30, 0xac /* 8004D9EC 0004A94C 41 82 00 58 */ beq lbl_8004DA44 /* 8004D9F0 0004A950 80 BE 00 AC */ lwz r5, 0xac(r30) /* 8004D9F4 0004A954 38 60 00 00 */ li r3, 0 /* 8004D9F8 0004A958 2C 05 00 00 */ cmpwi r5, 0 /* 8004D9FC 0004A95C 40 81 00 40 */ ble lbl_8004DA3C /* 8004DA00 0004A960 2C 05 00 08 */ cmpwi r5, 8 /* 8004DA04 0004A964 38 85 FF F8 */ addi r4, r5, -8 /* 8004DA08 0004A968 40 81 00 20 */ ble lbl_8004DA28 /* 8004DA0C 0004A96C 38 04 00 07 */ addi r0, r4, 7 /* 8004DA10 0004A970 54 00 E8 FE */ srwi r0, r0, 3 /* 8004DA14 0004A974 7C 09 03 A6 */ mtctr r0 /* 8004DA18 0004A978 2C 04 00 00 */ cmpwi r4, 0 /* 8004DA1C 0004A97C 40 81 00 0C */ ble lbl_8004DA28 lbl_8004DA20: /* 8004DA20 0004A980 38 63 00 08 */ addi r3, r3, 8 /* 8004DA24 0004A984 42 00 FF FC */ bdnz lbl_8004DA20 lbl_8004DA28: /* 8004DA28 0004A988 7C 03 28 50 */ subf r0, r3, r5 /* 8004DA2C 0004A98C 7C 09 03 A6 */ mtctr r0 /* 8004DA30 0004A990 7C 03 28 00 */ cmpw r3, r5 /* 8004DA34 0004A994 40 80 00 08 */ bge lbl_8004DA3C lbl_8004DA38: /* 8004DA38 0004A998 42 00 00 00 */ bdnz lbl_8004DA38 lbl_8004DA3C: /* 8004DA3C 0004A99C 38 00 00 00 */ li r0, 0 /* 8004DA40 0004A9A0 90 1E 00 AC */ stw r0, 0xac(r30) lbl_8004DA44: /* 8004DA44 0004A9A4 38 7E 00 14 */ addi r3, r30, 0x14 /* 8004DA48 0004A9A8 38 80 FF FF */ li r4, -1 /* 8004DA4C 0004A9AC 4B FB EB 69 */ bl sub_8000c5b4 /* 8004DA50 0004A9B0 34 1E 00 04 */ addic. r0, r30, 4 /* 8004DA54 0004A9B4 41 82 00 44 */ beq lbl_8004DA98 /* 8004DA58 0004A9B8 80 1E 00 08 */ lwz r0, 8(r30) /* 8004DA5C 0004A9BC 80 7E 00 10 */ lwz r3, 0x10(r30) /* 8004DA60 0004A9C0 54 00 08 3C */ slwi r0, r0, 1 /* 8004DA64 0004A9C4 7C 03 02 14 */ add r0, r3, r0 /* 8004DA68 0004A9C8 90 61 00 0C */ stw r3, 0xc(r1) /* 8004DA6C 0004A9CC 7C 64 1B 78 */ mr r4, r3 /* 8004DA70 0004A9D0 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DA74 0004A9D4 90 01 00 10 */ stw r0, 0x10(r1) /* 8004DA78 0004A9D8 90 61 00 08 */ stw r3, 8(r1) /* 8004DA7C 0004A9DC 48 00 00 08 */ b lbl_8004DA84 lbl_8004DA80: /* 8004DA80 0004A9E0 38 84 00 02 */ addi r4, r4, 2 lbl_8004DA84: /* 8004DA84 0004A9E4 7C 04 00 40 */ cmplw r4, r0 /* 8004DA88 0004A9E8 40 82 FF F8 */ bne lbl_8004DA80 /* 8004DA8C 0004A9EC 28 03 00 00 */ cmplwi r3, 0 /* 8004DA90 0004A9F0 41 82 00 08 */ beq lbl_8004DA98 /* 8004DA94 0004A9F4 48 2C 7E 9D */ bl Free__7CMemoryFPCv lbl_8004DA98: /* 8004DA98 0004A9F8 7F E0 07 35 */ extsh. r0, r31 /* 8004DA9C 0004A9FC 40 81 00 0C */ ble lbl_8004DAA8 /* 8004DAA0 0004AA00 7F C3 F3 78 */ mr r3, r30 /* 8004DAA4 0004AA04 48 2C 7E 8D */ bl Free__7CMemoryFPCv lbl_8004DAA8: /* 8004DAA8 0004AA08 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004DAAC 0004AA0C 7F C3 F3 78 */ mr r3, r30 /* 8004DAB0 0004AA10 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004DAB4 0004AA14 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004DAB8 0004AA18 7C 08 03 A6 */ mtlr r0 /* 8004DABC 0004AA1C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004DAC0 0004AA20 4E 80 00 20 */ blr .global __dt__18CFluidPlaneManagerFv __dt__18CFluidPlaneManagerFv: /* 8004DAC4 0004AA24 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004DAC8 0004AA28 7C 08 02 A6 */ mflr r0 /* 8004DACC 0004AA2C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004DAD0 0004AA30 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004DAD4 0004AA34 7C 9F 23 78 */ mr r31, r4 /* 8004DAD8 0004AA38 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004DADC 0004AA3C 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004DAE0 0004AA40 41 82 00 C0 */ beq lbl_8004DBA0 /* 8004DAE4 0004AA44 34 1E 00 18 */ addic. r0, r30, 0x18 /* 8004DAE8 0004AA48 41 82 00 58 */ beq lbl_8004DB40 /* 8004DAEC 0004AA4C 80 BE 00 18 */ lwz r5, 0x18(r30) /* 8004DAF0 0004AA50 38 60 00 00 */ li r3, 0 /* 8004DAF4 0004AA54 2C 05 00 00 */ cmpwi r5, 0 /* 8004DAF8 0004AA58 40 81 00 40 */ ble lbl_8004DB38 /* 8004DAFC 0004AA5C 2C 05 00 08 */ cmpwi r5, 8 /* 8004DB00 0004AA60 38 85 FF F8 */ addi r4, r5, -8 /* 8004DB04 0004AA64 40 81 00 20 */ ble lbl_8004DB24 /* 8004DB08 0004AA68 38 04 00 07 */ addi r0, r4, 7 /* 8004DB0C 0004AA6C 54 00 E8 FE */ srwi r0, r0, 3 /* 8004DB10 0004AA70 7C 09 03 A6 */ mtctr r0 /* 8004DB14 0004AA74 2C 04 00 00 */ cmpwi r4, 0 /* 8004DB18 0004AA78 40 81 00 0C */ ble lbl_8004DB24 lbl_8004DB1C: /* 8004DB1C 0004AA7C 38 63 00 08 */ addi r3, r3, 8 /* 8004DB20 0004AA80 42 00 FF FC */ bdnz lbl_8004DB1C lbl_8004DB24: /* 8004DB24 0004AA84 7C 03 28 50 */ subf r0, r3, r5 /* 8004DB28 0004AA88 7C 09 03 A6 */ mtctr r0 /* 8004DB2C 0004AA8C 7C 03 28 00 */ cmpw r3, r5 /* 8004DB30 0004AA90 40 80 00 08 */ bge lbl_8004DB38 lbl_8004DB34: /* 8004DB34 0004AA94 42 00 00 00 */ bdnz lbl_8004DB34 lbl_8004DB38: /* 8004DB38 0004AA98 38 00 00 00 */ li r0, 0 /* 8004DB3C 0004AA9C 90 1E 00 18 */ stw r0, 0x18(r30) lbl_8004DB40: /* 8004DB40 0004AAA0 28 1E 00 00 */ cmplwi r30, 0 /* 8004DB44 0004AAA4 41 82 00 4C */ beq lbl_8004DB90 /* 8004DB48 0004AAA8 34 1E 00 04 */ addic. r0, r30, 4 /* 8004DB4C 0004AAAC 41 82 00 44 */ beq lbl_8004DB90 /* 8004DB50 0004AAB0 80 1E 00 08 */ lwz r0, 8(r30) /* 8004DB54 0004AAB4 80 7E 00 10 */ lwz r3, 0x10(r30) /* 8004DB58 0004AAB8 54 00 30 32 */ slwi r0, r0, 6 /* 8004DB5C 0004AABC 7C 03 02 14 */ add r0, r3, r0 /* 8004DB60 0004AAC0 90 61 00 0C */ stw r3, 0xc(r1) /* 8004DB64 0004AAC4 7C 64 1B 78 */ mr r4, r3 /* 8004DB68 0004AAC8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DB6C 0004AACC 90 01 00 10 */ stw r0, 0x10(r1) /* 8004DB70 0004AAD0 90 61 00 08 */ stw r3, 8(r1) /* 8004DB74 0004AAD4 48 00 00 08 */ b lbl_8004DB7C lbl_8004DB78: /* 8004DB78 0004AAD8 38 84 00 40 */ addi r4, r4, 0x40 lbl_8004DB7C: /* 8004DB7C 0004AADC 7C 04 00 40 */ cmplw r4, r0 /* 8004DB80 0004AAE0 40 82 FF F8 */ bne lbl_8004DB78 /* 8004DB84 0004AAE4 28 03 00 00 */ cmplwi r3, 0 /* 8004DB88 0004AAE8 41 82 00 08 */ beq lbl_8004DB90 /* 8004DB8C 0004AAEC 48 2C 7D A5 */ bl Free__7CMemoryFPCv lbl_8004DB90: /* 8004DB90 0004AAF0 7F E0 07 35 */ extsh. r0, r31 /* 8004DB94 0004AAF4 40 81 00 0C */ ble lbl_8004DBA0 /* 8004DB98 0004AAF8 7F C3 F3 78 */ mr r3, r30 /* 8004DB9C 0004AAFC 48 2C 7D 95 */ bl Free__7CMemoryFPCv lbl_8004DBA0: /* 8004DBA0 0004AB00 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004DBA4 0004AB04 7F C3 F3 78 */ mr r3, r30 /* 8004DBA8 0004AB08 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004DBAC 0004AB0C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004DBB0 0004AB10 7C 08 03 A6 */ mtlr r0 /* 8004DBB4 0004AB14 38 21 00 20 */ addi r1, r1, 0x20 /* 8004DBB8 0004AB18 4E 80 00 20 */ blr .global __dt__13CEnvFxManagerFv __dt__13CEnvFxManagerFv: /* 8004DBBC 0004AB1C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DBC0 0004AB20 7C 08 02 A6 */ mflr r0 /* 8004DBC4 0004AB24 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DBC8 0004AB28 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DBCC 0004AB2C 7C 9F 23 78 */ mr r31, r4 /* 8004DBD0 0004AB30 93 C1 00 08 */ stw r30, 8(r1) /* 8004DBD4 0004AB34 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004DBD8 0004AB38 41 82 01 4C */ beq lbl_8004DD24 /* 8004DBDC 0004AB3C 34 1E 0C 48 */ addic. r0, r30, 0xc48 /* 8004DBE0 0004AB40 41 82 00 30 */ beq lbl_8004DC10 /* 8004DBE4 0004AB44 88 1E 0C 54 */ lbz r0, 0xc54(r30) /* 8004DBE8 0004AB48 28 00 00 00 */ cmplwi r0, 0 /* 8004DBEC 0004AB4C 41 82 00 1C */ beq lbl_8004DC08 /* 8004DBF0 0004AB50 34 7E 0C 48 */ addic. r3, r30, 0xc48 /* 8004DBF4 0004AB54 41 82 00 14 */ beq lbl_8004DC08 /* 8004DBF8 0004AB58 28 03 00 00 */ cmplwi r3, 0 /* 8004DBFC 0004AB5C 41 82 00 0C */ beq lbl_8004DC08 /* 8004DC00 0004AB60 38 80 00 00 */ li r4, 0 /* 8004DC04 0004AB64 48 2F 32 3D */ bl __dt__6CTokenFv lbl_8004DC08: /* 8004DC08 0004AB68 38 00 00 00 */ li r0, 0 /* 8004DC0C 0004AB6C 98 1E 0C 54 */ stb r0, 0xc54(r30) lbl_8004DC10: /* 8004DC10 0004AB70 34 1E 0B 84 */ addic. r0, r30, 0xb84 /* 8004DC14 0004AB74 41 82 00 58 */ beq lbl_8004DC6C /* 8004DC18 0004AB78 80 BE 0B 84 */ lwz r5, 0xb84(r30) /* 8004DC1C 0004AB7C 38 60 00 00 */ li r3, 0 /* 8004DC20 0004AB80 2C 05 00 00 */ cmpwi r5, 0 /* 8004DC24 0004AB84 40 81 00 40 */ ble lbl_8004DC64 /* 8004DC28 0004AB88 2C 05 00 08 */ cmpwi r5, 8 /* 8004DC2C 0004AB8C 38 85 FF F8 */ addi r4, r5, -8 /* 8004DC30 0004AB90 40 81 00 20 */ ble lbl_8004DC50 /* 8004DC34 0004AB94 38 04 00 07 */ addi r0, r4, 7 /* 8004DC38 0004AB98 54 00 E8 FE */ srwi r0, r0, 3 /* 8004DC3C 0004AB9C 7C 09 03 A6 */ mtctr r0 /* 8004DC40 0004ABA0 2C 04 00 00 */ cmpwi r4, 0 /* 8004DC44 0004ABA4 40 81 00 0C */ ble lbl_8004DC50 lbl_8004DC48: /* 8004DC48 0004ABA8 38 63 00 08 */ addi r3, r3, 8 /* 8004DC4C 0004ABAC 42 00 FF FC */ bdnz lbl_8004DC48 lbl_8004DC50: /* 8004DC50 0004ABB0 7C 03 28 50 */ subf r0, r3, r5 /* 8004DC54 0004ABB4 7C 09 03 A6 */ mtctr r0 /* 8004DC58 0004ABB8 7C 03 28 00 */ cmpw r3, r5 /* 8004DC5C 0004ABBC 40 80 00 08 */ bge lbl_8004DC64 lbl_8004DC60: /* 8004DC60 0004ABC0 42 00 00 00 */ bdnz lbl_8004DC60 lbl_8004DC64: /* 8004DC64 0004ABC4 38 00 00 00 */ li r0, 0 /* 8004DC68 0004ABC8 90 1E 0B 84 */ stw r0, 0xb84(r30) lbl_8004DC6C: /* 8004DC6C 0004ABCC 34 1E 0B 74 */ addic. r0, r30, 0xb74 /* 8004DC70 0004ABD0 41 82 00 30 */ beq lbl_8004DCA0 /* 8004DC74 0004ABD4 88 1E 0B 80 */ lbz r0, 0xb80(r30) /* 8004DC78 0004ABD8 28 00 00 00 */ cmplwi r0, 0 /* 8004DC7C 0004ABDC 41 82 00 1C */ beq lbl_8004DC98 /* 8004DC80 0004ABE0 34 7E 0B 74 */ addic. r3, r30, 0xb74 /* 8004DC84 0004ABE4 41 82 00 14 */ beq lbl_8004DC98 /* 8004DC88 0004ABE8 28 03 00 00 */ cmplwi r3, 0 /* 8004DC8C 0004ABEC 41 82 00 0C */ beq lbl_8004DC98 /* 8004DC90 0004ABF0 38 80 00 00 */ li r4, 0 /* 8004DC94 0004ABF4 48 2F 31 AD */ bl __dt__6CTokenFv lbl_8004DC98: /* 8004DC98 0004ABF8 38 00 00 00 */ li r0, 0 /* 8004DC9C 0004ABFC 98 1E 0B 80 */ stb r0, 0xb80(r30) lbl_8004DCA0: /* 8004DCA0 0004AC00 34 1E 0B 58 */ addic. r0, r30, 0xb58 /* 8004DCA4 0004AC04 41 82 00 30 */ beq lbl_8004DCD4 /* 8004DCA8 0004AC08 88 1E 0B 64 */ lbz r0, 0xb64(r30) /* 8004DCAC 0004AC0C 28 00 00 00 */ cmplwi r0, 0 /* 8004DCB0 0004AC10 41 82 00 1C */ beq lbl_8004DCCC /* 8004DCB4 0004AC14 34 7E 0B 58 */ addic. r3, r30, 0xb58 /* 8004DCB8 0004AC18 41 82 00 14 */ beq lbl_8004DCCC /* 8004DCBC 0004AC1C 28 03 00 00 */ cmplwi r3, 0 /* 8004DCC0 0004AC20 41 82 00 0C */ beq lbl_8004DCCC /* 8004DCC4 0004AC24 38 80 00 00 */ li r4, 0 /* 8004DCC8 0004AC28 48 2F 31 79 */ bl __dt__6CTokenFv lbl_8004DCCC: /* 8004DCCC 0004AC2C 38 00 00 00 */ li r0, 0 /* 8004DCD0 0004AC30 98 1E 0B 64 */ stb r0, 0xb64(r30) lbl_8004DCD4: /* 8004DCD4 0004AC34 38 7E 00 50 */ addi r3, r30, 0x50 /* 8004DCD8 0004AC38 38 80 FF FF */ li r4, -1 /* 8004DCDC 0004AC3C 48 00 00 65 */ bl sub_8004dd40 /* 8004DCE0 0004AC40 34 1E 00 40 */ addic. r0, r30, 0x40 /* 8004DCE4 0004AC44 41 82 00 30 */ beq lbl_8004DD14 /* 8004DCE8 0004AC48 88 1E 00 4C */ lbz r0, 0x4c(r30) /* 8004DCEC 0004AC4C 28 00 00 00 */ cmplwi r0, 0 /* 8004DCF0 0004AC50 41 82 00 1C */ beq lbl_8004DD0C /* 8004DCF4 0004AC54 34 7E 00 40 */ addic. r3, r30, 0x40 /* 8004DCF8 0004AC58 41 82 00 14 */ beq lbl_8004DD0C /* 8004DCFC 0004AC5C 28 03 00 00 */ cmplwi r3, 0 /* 8004DD00 0004AC60 41 82 00 0C */ beq lbl_8004DD0C /* 8004DD04 0004AC64 38 80 00 00 */ li r4, 0 /* 8004DD08 0004AC68 48 2F 31 39 */ bl __dt__6CTokenFv lbl_8004DD0C: /* 8004DD0C 0004AC6C 38 00 00 00 */ li r0, 0 /* 8004DD10 0004AC70 98 1E 00 4C */ stb r0, 0x4c(r30) lbl_8004DD14: /* 8004DD14 0004AC74 7F E0 07 35 */ extsh. r0, r31 /* 8004DD18 0004AC78 40 81 00 0C */ ble lbl_8004DD24 /* 8004DD1C 0004AC7C 7F C3 F3 78 */ mr r3, r30 /* 8004DD20 0004AC80 48 2C 7C 11 */ bl Free__7CMemoryFPCv lbl_8004DD24: /* 8004DD24 0004AC84 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DD28 0004AC88 7F C3 F3 78 */ mr r3, r30 /* 8004DD2C 0004AC8C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DD30 0004AC90 83 C1 00 08 */ lwz r30, 8(r1) /* 8004DD34 0004AC94 7C 08 03 A6 */ mtlr r0 /* 8004DD38 0004AC98 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DD3C 0004AC9C 4E 80 00 20 */ blr .global sub_8004dd40 sub_8004dd40: /* 8004DD40 0004ACA0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DD44 0004ACA4 7C 08 02 A6 */ mflr r0 /* 8004DD48 0004ACA8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DD4C 0004ACAC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DD50 0004ACB0 7C 9F 23 78 */ mr r31, r4 /* 8004DD54 0004ACB4 93 C1 00 08 */ stw r30, 8(r1) /* 8004DD58 0004ACB8 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004DD5C 0004ACBC 41 82 00 18 */ beq lbl_8004DD74 /* 8004DD60 0004ACC0 48 00 00 31 */ bl sub_8004dd90 /* 8004DD64 0004ACC4 7F E0 07 35 */ extsh. r0, r31 /* 8004DD68 0004ACC8 40 81 00 0C */ ble lbl_8004DD74 /* 8004DD6C 0004ACCC 7F C3 F3 78 */ mr r3, r30 /* 8004DD70 0004ACD0 48 2C 7B C1 */ bl Free__7CMemoryFPCv lbl_8004DD74: /* 8004DD74 0004ACD4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DD78 0004ACD8 7F C3 F3 78 */ mr r3, r30 /* 8004DD7C 0004ACDC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DD80 0004ACE0 83 C1 00 08 */ lwz r30, 8(r1) /* 8004DD84 0004ACE4 7C 08 03 A6 */ mtlr r0 /* 8004DD88 0004ACE8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DD8C 0004ACEC 4E 80 00 20 */ blr .global sub_8004dd90 sub_8004dd90: /* 8004DD90 0004ACF0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004DD94 0004ACF4 7C 08 02 A6 */ mflr r0 /* 8004DD98 0004ACF8 90 01 00 24 */ stw r0, 0x24(r1) /* 8004DD9C 0004ACFC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004DDA0 0004AD00 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004DDA4 0004AD04 3B C0 00 00 */ li r30, 0 /* 8004DDA8 0004AD08 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004DDAC 0004AD0C 7C 7D 1B 78 */ mr r29, r3 /* 8004DDB0 0004AD10 3B FD 00 04 */ addi r31, r29, 4 /* 8004DDB4 0004AD14 48 00 00 14 */ b lbl_8004DDC8 lbl_8004DDB8: /* 8004DDB8 0004AD18 7F E3 FB 78 */ mr r3, r31 /* 8004DDBC 0004AD1C 48 00 00 3D */ bl sub_8004ddf8 /* 8004DDC0 0004AD20 3B FF 00 2C */ addi r31, r31, 0x2c /* 8004DDC4 0004AD24 3B DE 00 01 */ addi r30, r30, 1 lbl_8004DDC8: /* 8004DDC8 0004AD28 80 1D 00 00 */ lwz r0, 0(r29) /* 8004DDCC 0004AD2C 7C 1E 00 00 */ cmpw r30, r0 /* 8004DDD0 0004AD30 41 80 FF E8 */ blt lbl_8004DDB8 /* 8004DDD4 0004AD34 38 00 00 00 */ li r0, 0 /* 8004DDD8 0004AD38 90 1D 00 00 */ stw r0, 0(r29) /* 8004DDDC 0004AD3C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004DDE0 0004AD40 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004DDE4 0004AD44 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004DDE8 0004AD48 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004DDEC 0004AD4C 7C 08 03 A6 */ mtlr r0 /* 8004DDF0 0004AD50 38 21 00 20 */ addi r1, r1, 0x20 /* 8004DDF4 0004AD54 4E 80 00 20 */ blr .global sub_8004ddf8 sub_8004ddf8: /* 8004DDF8 0004AD58 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004DDFC 0004AD5C 7C 08 02 A6 */ mflr r0 /* 8004DE00 0004AD60 28 03 00 00 */ cmplwi r3, 0 /* 8004DE04 0004AD64 90 01 00 24 */ stw r0, 0x24(r1) /* 8004DE08 0004AD68 41 82 00 4C */ beq lbl_8004DE54 /* 8004DE0C 0004AD6C 34 03 00 1C */ addic. r0, r3, 0x1c /* 8004DE10 0004AD70 41 82 00 44 */ beq lbl_8004DE54 /* 8004DE14 0004AD74 80 03 00 20 */ lwz r0, 0x20(r3) /* 8004DE18 0004AD78 80 63 00 28 */ lwz r3, 0x28(r3) /* 8004DE1C 0004AD7C 1C 00 00 06 */ mulli r0, r0, 6 /* 8004DE20 0004AD80 90 61 00 0C */ stw r3, 0xc(r1) /* 8004DE24 0004AD84 7C 64 1B 78 */ mr r4, r3 /* 8004DE28 0004AD88 7C 03 02 14 */ add r0, r3, r0 /* 8004DE2C 0004AD8C 90 61 00 08 */ stw r3, 8(r1) /* 8004DE30 0004AD90 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DE34 0004AD94 90 01 00 10 */ stw r0, 0x10(r1) /* 8004DE38 0004AD98 48 00 00 08 */ b lbl_8004DE40 lbl_8004DE3C: /* 8004DE3C 0004AD9C 38 84 00 06 */ addi r4, r4, 6 lbl_8004DE40: /* 8004DE40 0004ADA0 7C 04 00 40 */ cmplw r4, r0 /* 8004DE44 0004ADA4 40 82 FF F8 */ bne lbl_8004DE3C /* 8004DE48 0004ADA8 28 03 00 00 */ cmplwi r3, 0 /* 8004DE4C 0004ADAC 41 82 00 08 */ beq lbl_8004DE54 /* 8004DE50 0004ADB0 48 2C 7A E1 */ bl Free__7CMemoryFPCv lbl_8004DE54: /* 8004DE54 0004ADB4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004DE58 0004ADB8 7C 08 03 A6 */ mtlr r0 /* 8004DE5C 0004ADBC 38 21 00 20 */ addi r1, r1, 0x20 /* 8004DE60 0004ADC0 4E 80 00 20 */ blr .global __dt__20CActorModelParticlesFv __dt__20CActorModelParticlesFv: /* 8004DE64 0004ADC4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DE68 0004ADC8 7C 08 02 A6 */ mflr r0 /* 8004DE6C 0004ADCC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DE70 0004ADD0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DE74 0004ADD4 7C 9F 23 78 */ mr r31, r4 /* 8004DE78 0004ADD8 93 C1 00 08 */ stw r30, 8(r1) /* 8004DE7C 0004ADDC 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004DE80 0004ADE0 41 82 00 B0 */ beq lbl_8004DF30 /* 8004DE84 0004ADE4 38 7E 00 50 */ addi r3, r30, 0x50 /* 8004DE88 0004ADE8 38 80 FF FF */ li r4, -1 /* 8004DE8C 0004ADEC 48 00 00 C1 */ bl sub_8004df4c /* 8004DE90 0004ADF0 38 7E 00 48 */ addi r3, r30, 0x48 /* 8004DE94 0004ADF4 38 80 FF FF */ li r4, -1 /* 8004DE98 0004ADF8 48 2F 2F A9 */ bl __dt__6CTokenFv /* 8004DE9C 0004ADFC 34 1E 00 40 */ addic. r0, r30, 0x40 /* 8004DEA0 0004AE00 41 82 00 10 */ beq lbl_8004DEB0 /* 8004DEA4 0004AE04 38 7E 00 40 */ addi r3, r30, 0x40 /* 8004DEA8 0004AE08 38 80 00 00 */ li r4, 0 /* 8004DEAC 0004AE0C 48 2F 2F 95 */ bl __dt__6CTokenFv lbl_8004DEB0: /* 8004DEB0 0004AE10 34 1E 00 38 */ addic. r0, r30, 0x38 /* 8004DEB4 0004AE14 41 82 00 10 */ beq lbl_8004DEC4 /* 8004DEB8 0004AE18 38 7E 00 38 */ addi r3, r30, 0x38 /* 8004DEBC 0004AE1C 38 80 00 00 */ li r4, 0 /* 8004DEC0 0004AE20 48 2F 2F 81 */ bl __dt__6CTokenFv lbl_8004DEC4: /* 8004DEC4 0004AE24 34 1E 00 30 */ addic. r0, r30, 0x30 /* 8004DEC8 0004AE28 41 82 00 10 */ beq lbl_8004DED8 /* 8004DECC 0004AE2C 38 7E 00 30 */ addi r3, r30, 0x30 /* 8004DED0 0004AE30 38 80 00 00 */ li r4, 0 /* 8004DED4 0004AE34 48 2F 2F 6D */ bl __dt__6CTokenFv lbl_8004DED8: /* 8004DED8 0004AE38 34 1E 00 28 */ addic. r0, r30, 0x28 /* 8004DEDC 0004AE3C 41 82 00 10 */ beq lbl_8004DEEC /* 8004DEE0 0004AE40 38 7E 00 28 */ addi r3, r30, 0x28 /* 8004DEE4 0004AE44 38 80 00 00 */ li r4, 0 /* 8004DEE8 0004AE48 48 2F 2F 59 */ bl __dt__6CTokenFv lbl_8004DEEC: /* 8004DEEC 0004AE4C 34 1E 00 20 */ addic. r0, r30, 0x20 /* 8004DEF0 0004AE50 41 82 00 10 */ beq lbl_8004DF00 /* 8004DEF4 0004AE54 38 7E 00 20 */ addi r3, r30, 0x20 /* 8004DEF8 0004AE58 38 80 00 00 */ li r4, 0 /* 8004DEFC 0004AE5C 48 2F 2F 45 */ bl __dt__6CTokenFv lbl_8004DF00: /* 8004DF00 0004AE60 34 1E 00 18 */ addic. r0, r30, 0x18 /* 8004DF04 0004AE64 41 82 00 10 */ beq lbl_8004DF14 /* 8004DF08 0004AE68 38 7E 00 18 */ addi r3, r30, 0x18 /* 8004DF0C 0004AE6C 38 80 00 00 */ li r4, 0 /* 8004DF10 0004AE70 48 2F 2F 31 */ bl __dt__6CTokenFv lbl_8004DF14: /* 8004DF14 0004AE74 7F C3 F3 78 */ mr r3, r30 /* 8004DF18 0004AE78 38 80 FF FF */ li r4, -1 /* 8004DF1C 0004AE7C 48 00 28 45 */ bl sub_80050760 /* 8004DF20 0004AE80 7F E0 07 35 */ extsh. r0, r31 /* 8004DF24 0004AE84 40 81 00 0C */ ble lbl_8004DF30 /* 8004DF28 0004AE88 7F C3 F3 78 */ mr r3, r30 /* 8004DF2C 0004AE8C 48 2C 7A 05 */ bl Free__7CMemoryFPCv lbl_8004DF30: /* 8004DF30 0004AE90 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DF34 0004AE94 7F C3 F3 78 */ mr r3, r30 /* 8004DF38 0004AE98 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DF3C 0004AE9C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004DF40 0004AEA0 7C 08 03 A6 */ mtlr r0 /* 8004DF44 0004AEA4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DF48 0004AEA8 4E 80 00 20 */ blr .global sub_8004df4c sub_8004df4c: /* 8004DF4C 0004AEAC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DF50 0004AEB0 7C 08 02 A6 */ mflr r0 /* 8004DF54 0004AEB4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DF58 0004AEB8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DF5C 0004AEBC 7C 9F 23 78 */ mr r31, r4 /* 8004DF60 0004AEC0 93 C1 00 08 */ stw r30, 8(r1) /* 8004DF64 0004AEC4 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004DF68 0004AEC8 41 82 00 18 */ beq lbl_8004DF80 /* 8004DF6C 0004AECC 48 00 00 31 */ bl sub_8004df9c /* 8004DF70 0004AED0 7F E0 07 35 */ extsh. r0, r31 /* 8004DF74 0004AED4 40 81 00 0C */ ble lbl_8004DF80 /* 8004DF78 0004AED8 7F C3 F3 78 */ mr r3, r30 /* 8004DF7C 0004AEDC 48 2C 79 B5 */ bl Free__7CMemoryFPCv lbl_8004DF80: /* 8004DF80 0004AEE0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DF84 0004AEE4 7F C3 F3 78 */ mr r3, r30 /* 8004DF88 0004AEE8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DF8C 0004AEEC 83 C1 00 08 */ lwz r30, 8(r1) /* 8004DF90 0004AEF0 7C 08 03 A6 */ mtlr r0 /* 8004DF94 0004AEF4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DF98 0004AEF8 4E 80 00 20 */ blr .global sub_8004df9c sub_8004df9c: /* 8004DF9C 0004AEFC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004DFA0 0004AF00 7C 08 02 A6 */ mflr r0 /* 8004DFA4 0004AF04 90 01 00 34 */ stw r0, 0x34(r1) /* 8004DFA8 0004AF08 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 8004DFAC 0004AF0C 7C 7B 1B 78 */ mr r27, r3 /* 8004DFB0 0004AF10 3B 80 00 00 */ li r28, 0 /* 8004DFB4 0004AF14 3B DB 00 04 */ addi r30, r27, 4 /* 8004DFB8 0004AF18 48 00 00 64 */ b lbl_8004E01C lbl_8004DFBC: /* 8004DFBC 0004AF1C 28 1E 00 00 */ cmplwi r30, 0 /* 8004DFC0 0004AF20 41 82 00 54 */ beq lbl_8004E014 /* 8004DFC4 0004AF24 41 82 00 50 */ beq lbl_8004E014 /* 8004DFC8 0004AF28 80 1E 00 04 */ lwz r0, 4(r30) /* 8004DFCC 0004AF2C 83 BE 00 0C */ lwz r29, 0xc(r30) /* 8004DFD0 0004AF30 54 00 18 38 */ slwi r0, r0, 3 /* 8004DFD4 0004AF34 7F FD 02 14 */ add r31, r29, r0 /* 8004DFD8 0004AF38 93 A1 00 0C */ stw r29, 0xc(r1) /* 8004DFDC 0004AF3C 93 E1 00 14 */ stw r31, 0x14(r1) /* 8004DFE0 0004AF40 93 E1 00 10 */ stw r31, 0x10(r1) /* 8004DFE4 0004AF44 93 A1 00 08 */ stw r29, 8(r1) /* 8004DFE8 0004AF48 48 00 00 14 */ b lbl_8004DFFC lbl_8004DFEC: /* 8004DFEC 0004AF4C 7F A3 EB 78 */ mr r3, r29 /* 8004DFF0 0004AF50 38 80 FF FF */ li r4, -1 /* 8004DFF4 0004AF54 48 2F 2E 4D */ bl __dt__6CTokenFv /* 8004DFF8 0004AF58 3B BD 00 08 */ addi r29, r29, 8 lbl_8004DFFC: /* 8004DFFC 0004AF5C 7C 1D F8 40 */ cmplw r29, r31 /* 8004E000 0004AF60 40 82 FF EC */ bne lbl_8004DFEC /* 8004E004 0004AF64 80 7E 00 0C */ lwz r3, 0xc(r30) /* 8004E008 0004AF68 28 03 00 00 */ cmplwi r3, 0 /* 8004E00C 0004AF6C 41 82 00 08 */ beq lbl_8004E014 /* 8004E010 0004AF70 48 2C 79 21 */ bl Free__7CMemoryFPCv lbl_8004E014: /* 8004E014 0004AF74 3B DE 00 18 */ addi r30, r30, 0x18 /* 8004E018 0004AF78 3B 9C 00 01 */ addi r28, r28, 1 lbl_8004E01C: /* 8004E01C 0004AF7C 80 1B 00 00 */ lwz r0, 0(r27) /* 8004E020 0004AF80 7C 1C 00 00 */ cmpw r28, r0 /* 8004E024 0004AF84 41 80 FF 98 */ blt lbl_8004DFBC /* 8004E028 0004AF88 38 00 00 00 */ li r0, 0 /* 8004E02C 0004AF8C 90 1B 00 00 */ stw r0, 0(r27) /* 8004E030 0004AF90 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 8004E034 0004AF94 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004E038 0004AF98 7C 08 03 A6 */ mtlr r0 /* 8004E03C 0004AF9C 38 21 00 30 */ addi r1, r1, 0x30 /* 8004E040 0004AFA0 4E 80 00 20 */ blr .global "__dt__Q24rstl36reserved_vector<15CCameraBlurPass,9>Fv" "__dt__Q24rstl36reserved_vector<15CCameraBlurPass,9>Fv": /* 8004E044 0004AFA4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004E048 0004AFA8 7C 08 02 A6 */ mflr r0 /* 8004E04C 0004AFAC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004E050 0004AFB0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004E054 0004AFB4 7C 9F 23 78 */ mr r31, r4 /* 8004E058 0004AFB8 93 C1 00 08 */ stw r30, 8(r1) /* 8004E05C 0004AFBC 7C 7E 1B 79 */ or. r30, r3, r3 /* 8004E060 0004AFC0 41 82 00 18 */ beq lbl_8004E078 /* 8004E064 0004AFC4 48 00 00 31 */ bl "clear__Q24rstl36reserved_vector<15CCameraBlurPass,9>Fv" /* 8004E068 0004AFC8 7F E0 07 35 */ extsh. r0, r31 /* 8004E06C 0004AFCC 40 81 00 0C */ ble lbl_8004E078 /* 8004E070 0004AFD0 7F C3 F3 78 */ mr r3, r30 /* 8004E074 0004AFD4 48 2C 78 BD */ bl Free__7CMemoryFPCv lbl_8004E078: /* 8004E078 0004AFD8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004E07C 0004AFDC 7F C3 F3 78 */ mr r3, r30 /* 8004E080 0004AFE0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004E084 0004AFE4 83 C1 00 08 */ lwz r30, 8(r1) /* 8004E088 0004AFE8 7C 08 03 A6 */ mtlr r0 /* 8004E08C 0004AFEC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004E090 0004AFF0 4E 80 00 20 */ blr .global "clear__Q24rstl36reserved_vector<15CCameraBlurPass,9>Fv" "clear__Q24rstl36reserved_vector<15CCameraBlurPass,9>Fv": /* 8004E094 0004AFF4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004E098 0004AFF8 7C 08 02 A6 */ mflr r0 /* 8004E09C 0004AFFC 90 01 00 24 */ stw r0, 0x24(r1) /* 8004E0A0 0004B000 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004E0A4 0004B004 3B E0 00 00 */ li r31, 0 /* 8004E0A8 0004B008 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004E0AC 0004B00C 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004E0B0 0004B010 3B A0 00 00 */ li r29, 0 /* 8004E0B4 0004B014 93 81 00 10 */ stw r28, 0x10(r1) /* 8004E0B8 0004B018 7C 7C 1B 78 */ mr r28, r3 /* 8004E0BC 0004B01C 3B DC 00 04 */ addi r30, r28, 4 /* 8004E0C0 0004B020 48 00 00 40 */ b lbl_8004E100 lbl_8004E0C4: /* 8004E0C4 0004B024 28 1E 00 00 */ cmplwi r30, 0 /* 8004E0C8 0004B028 41 82 00 30 */ beq lbl_8004E0F8 /* 8004E0CC 0004B02C 41 82 00 2C */ beq lbl_8004E0F8 /* 8004E0D0 0004B030 88 1E 00 0C */ lbz r0, 0xc(r30) /* 8004E0D4 0004B034 28 00 00 00 */ cmplwi r0, 0 /* 8004E0D8 0004B038 41 82 00 1C */ beq lbl_8004E0F4 /* 8004E0DC 0004B03C 28 1E 00 00 */ cmplwi r30, 0 /* 8004E0E0 0004B040 41 82 00 14 */ beq lbl_8004E0F4 /* 8004E0E4 0004B044 41 82 00 10 */ beq lbl_8004E0F4 /* 8004E0E8 0004B048 7F C3 F3 78 */ mr r3, r30 /* 8004E0EC 0004B04C 38 80 00 00 */ li r4, 0 /* 8004E0F0 0004B050 48 2F 2D 51 */ bl __dt__6CTokenFv lbl_8004E0F4: /* 8004E0F4 0004B054 9B FE 00 0C */ stb r31, 0xc(r30) lbl_8004E0F8: /* 8004E0F8 0004B058 3B DE 00 34 */ addi r30, r30, 0x34 /* 8004E0FC 0004B05C 3B BD 00 01 */ addi r29, r29, 1 lbl_8004E100: /* 8004E100 0004B060 80 1C 00 00 */ lwz r0, 0(r28) /* 8004E104 0004B064 7C 1D 00 00 */ cmpw r29, r0 /* 8004E108 0004B068 41 80 FF BC */ blt lbl_8004E0C4 /* 8004E10C 0004B06C 38 00 00 00 */ li r0, 0 /* 8004E110 0004B070 90 1C 00 00 */ stw r0, 0(r28) /* 8004E114 0004B074 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004E118 0004B078 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004E11C 0004B07C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004E120 0004B080 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004E124 0004B084 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004E128 0004B088 7C 08 03 A6 */ mtlr r0 /* 8004E12C 0004B08C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004E130 0004B090 4E 80 00 20 */ blr .global "__ct__13CStateManagerFRCQ24rstl26ncrc_ptr<14CScriptMailbox>RCQ24rstl25ncrc_ptr<13CMapWorldInfo>RCQ24rstl24ncrc_ptr<12CPlayerState>RCQ24rstl30ncrc_ptr<18CWorldTransManager>" "__ct__13CStateManagerFRCQ24rstl26ncrc_ptr<14CScriptMailbox>RCQ24rstl25ncrc_ptr<13CMapWorldInfo>RCQ24rstl24ncrc_ptr<12CPlayerState>RCQ24rstl30ncrc_ptr<18CWorldTransManager>": /* 8004E134 0004B094 94 21 FF 00 */ stwu r1, -0x100(r1) /* 8004E138 0004B098 7C 08 02 A6 */ mflr r0 /* 8004E13C 0004B09C 39 20 00 00 */ li r9, 0 /* 8004E140 0004B0A0 90 01 01 04 */ stw r0, 0x104(r1) /* 8004E144 0004B0A4 38 00 00 80 */ li r0, 0x80 /* 8004E148 0004B0A8 BF 21 00 E4 */ stmw r25, 0xe4(r1) /* 8004E14C 0004B0AC 7C 7F 1B 78 */ mr r31, r3 /* 8004E150 0004B0B0 7C 9A 23 78 */ mr r26, r4 /* 8004E154 0004B0B4 7C BB 2B 78 */ mr r27, r5 /* 8004E158 0004B0B8 7C DC 33 78 */ mr r28, r6 /* 8004E15C 0004B0BC 7C FD 3B 78 */ mr r29, r7 /* 8004E160 0004B0C0 7D 1E 43 78 */ mr r30, r8 /* 8004E164 0004B0C4 B1 23 00 00 */ sth r9, 0(r3) /* 8004E168 0004B0C8 38 60 04 00 */ li r3, 0x400 /* 8004E16C 0004B0CC 90 7F 00 04 */ stw r3, 4(r31) /* 8004E170 0004B0D0 38 7F 00 08 */ addi r3, r31, 8 /* 8004E174 0004B0D4 7C 09 03 A6 */ mtctr r0 lbl_8004E178: /* 8004E178 0004B0D8 28 03 00 00 */ cmplwi r3, 0 /* 8004E17C 0004B0DC 41 82 00 0C */ beq lbl_8004E188 /* 8004E180 0004B0E0 A0 0D 82 60 */ lhz r0, lbl_805A6E20@sda21(r13) /* 8004E184 0004B0E4 B0 03 00 00 */ sth r0, 0(r3) lbl_8004E188: /* 8004E188 0004B0E8 34 63 00 02 */ addic. r3, r3, 2 /* 8004E18C 0004B0EC 41 82 00 0C */ beq lbl_8004E198 /* 8004E190 0004B0F0 A0 0D 82 60 */ lhz r0, lbl_805A6E20@sda21(r13) /* 8004E194 0004B0F4 B0 03 00 00 */ sth r0, 0(r3) lbl_8004E198: /* 8004E198 0004B0F8 34 63 00 02 */ addic. r3, r3, 2 /* 8004E19C 0004B0FC 41 82 00 0C */ beq lbl_8004E1A8 /* 8004E1A0 0004B100 A0 0D 82 60 */ lhz r0, lbl_805A6E20@sda21(r13) /* 8004E1A4 0004B104 B0 03 00 00 */ sth r0, 0(r3) lbl_8004E1A8: /* 8004E1A8 0004B108 34 63 00 02 */ addic. r3, r3, 2 /* 8004E1AC 0004B10C 41 82 00 0C */ beq lbl_8004E1B8 /* 8004E1B0 0004B110 A0 0D 82 60 */ lhz r0, lbl_805A6E20@sda21(r13) /* 8004E1B4 0004B114 B0 03 00 00 */ sth r0, 0(r3) lbl_8004E1B8: /* 8004E1B8 0004B118 34 63 00 02 */ addic. r3, r3, 2 /* 8004E1BC 0004B11C 41 82 00 0C */ beq lbl_8004E1C8 /* 8004E1C0 0004B120 A0 0D 82 60 */ lhz r0, lbl_805A6E20@sda21(r13) /* 8004E1C4 0004B124 B0 03 00 00 */ sth r0, 0(r3) lbl_8004E1C8: /* 8004E1C8 0004B128 34 63 00 02 */ addic. r3, r3, 2 /* 8004E1CC 0004B12C 41 82 00 0C */ beq lbl_8004E1D8 /* 8004E1D0 0004B130 A0 0D 82 60 */ lhz r0, lbl_805A6E20@sda21(r13) /* 8004E1D4 0004B134 B0 03 00 00 */ sth r0, 0(r3) lbl_8004E1D8: /* 8004E1D8 0004B138 34 63 00 02 */ addic. r3, r3, 2 /* 8004E1DC 0004B13C 41 82 00 0C */ beq lbl_8004E1E8 /* 8004E1E0 0004B140 A0 0D 82 60 */ lhz r0, lbl_805A6E20@sda21(r13) /* 8004E1E4 0004B144 B0 03 00 00 */ sth r0, 0(r3) lbl_8004E1E8: /* 8004E1E8 0004B148 34 63 00 02 */ addic. r3, r3, 2 /* 8004E1EC 0004B14C 41 82 00 0C */ beq lbl_8004E1F8 /* 8004E1F0 0004B150 A0 0D 82 60 */ lhz r0, lbl_805A6E20@sda21(r13) /* 8004E1F4 0004B154 B0 03 00 00 */ sth r0, 0(r3) lbl_8004E1F8: /* 8004E1F8 0004B158 39 29 00 07 */ addi r9, r9, 7 /* 8004E1FC 0004B15C 38 63 00 02 */ addi r3, r3, 2 /* 8004E200 0004B160 42 00 FF 78 */ bdnz lbl_8004E178 /* 8004E204 0004B164 38 60 00 00 */ li r3, 0 /* 8004E208 0004B168 38 00 00 08 */ li r0, 8 /* 8004E20C 0004B16C 34 9F 08 0C */ addic. r4, r31, 0x80c /* 8004E210 0004B170 98 61 00 6C */ stb r3, 0x6c(r1) /* 8004E214 0004B174 90 61 00 70 */ stw r3, 0x70(r1) /* 8004E218 0004B178 90 1F 08 08 */ stw r0, 0x808(r31) /* 8004E21C 0004B17C 41 82 00 10 */ beq lbl_8004E22C /* 8004E220 0004B180 98 64 00 00 */ stb r3, 0(r4) /* 8004E224 0004B184 98 61 00 6C */ stb r3, 0x6c(r1) /* 8004E228 0004B188 90 64 00 04 */ stw r3, 4(r4) lbl_8004E22C: /* 8004E22C 0004B18C 34 84 00 08 */ addic. r4, r4, 8 /* 8004E230 0004B190 41 82 00 14 */ beq lbl_8004E244 /* 8004E234 0004B194 88 01 00 6C */ lbz r0, 0x6c(r1) /* 8004E238 0004B198 98 04 00 00 */ stb r0, 0(r4) /* 8004E23C 0004B19C 90 64 00 04 */ stw r3, 4(r4) /* 8004E240 0004B1A0 98 61 00 6C */ stb r3, 0x6c(r1) lbl_8004E244: /* 8004E244 0004B1A4 34 84 00 08 */ addic. r4, r4, 8 /* 8004E248 0004B1A8 41 82 00 14 */ beq lbl_8004E25C /* 8004E24C 0004B1AC 88 01 00 6C */ lbz r0, 0x6c(r1) /* 8004E250 0004B1B0 98 04 00 00 */ stb r0, 0(r4) /* 8004E254 0004B1B4 90 64 00 04 */ stw r3, 4(r4) /* 8004E258 0004B1B8 98 61 00 6C */ stb r3, 0x6c(r1) lbl_8004E25C: /* 8004E25C 0004B1BC 34 84 00 08 */ addic. r4, r4, 8 /* 8004E260 0004B1C0 41 82 00 14 */ beq lbl_8004E274 /* 8004E264 0004B1C4 88 01 00 6C */ lbz r0, 0x6c(r1) /* 8004E268 0004B1C8 98 04 00 00 */ stb r0, 0(r4) /* 8004E26C 0004B1CC 90 64 00 04 */ stw r3, 4(r4) /* 8004E270 0004B1D0 98 61 00 6C */ stb r3, 0x6c(r1) lbl_8004E274: /* 8004E274 0004B1D4 34 84 00 08 */ addic. r4, r4, 8 /* 8004E278 0004B1D8 41 82 00 14 */ beq lbl_8004E28C /* 8004E27C 0004B1DC 88 01 00 6C */ lbz r0, 0x6c(r1) /* 8004E280 0004B1E0 98 04 00 00 */ stb r0, 0(r4) /* 8004E284 0004B1E4 90 64 00 04 */ stw r3, 4(r4) /* 8004E288 0004B1E8 98 61 00 6C */ stb r3, 0x6c(r1) lbl_8004E28C: /* 8004E28C 0004B1EC 34 84 00 08 */ addic. r4, r4, 8 /* 8004E290 0004B1F0 41 82 00 14 */ beq lbl_8004E2A4 /* 8004E294 0004B1F4 88 01 00 6C */ lbz r0, 0x6c(r1) /* 8004E298 0004B1F8 98 04 00 00 */ stb r0, 0(r4) /* 8004E29C 0004B1FC 90 64 00 04 */ stw r3, 4(r4) /* 8004E2A0 0004B200 98 61 00 6C */ stb r3, 0x6c(r1) lbl_8004E2A4: /* 8004E2A4 0004B204 34 84 00 08 */ addic. r4, r4, 8 /* 8004E2A8 0004B208 41 82 00 14 */ beq lbl_8004E2BC /* 8004E2AC 0004B20C 88 01 00 6C */ lbz r0, 0x6c(r1) /* 8004E2B0 0004B210 98 04 00 00 */ stb r0, 0(r4) /* 8004E2B4 0004B214 90 64 00 04 */ stw r3, 4(r4) /* 8004E2B8 0004B218 98 61 00 6C */ stb r3, 0x6c(r1) lbl_8004E2BC: /* 8004E2BC 0004B21C 34 84 00 08 */ addic. r4, r4, 8 /* 8004E2C0 0004B220 41 82 00 14 */ beq lbl_8004E2D4 /* 8004E2C4 0004B224 88 01 00 6C */ lbz r0, 0x6c(r1) /* 8004E2C8 0004B228 98 04 00 00 */ stb r0, 0(r4) /* 8004E2CC 0004B22C 90 64 00 04 */ stw r3, 4(r4) /* 8004E2D0 0004B230 98 61 00 6C */ stb r3, 0x6c(r1) lbl_8004E2D4: /* 8004E2D4 0004B234 88 01 00 6C */ lbz r0, 0x6c(r1) /* 8004E2D8 0004B238 28 00 00 00 */ cmplwi r0, 0 /* 8004E2DC 0004B23C 41 82 00 0C */ beq lbl_8004E2E8 /* 8004E2E0 0004B240 80 61 00 70 */ lwz r3, 0x70(r1) /* 8004E2E4 0004B244 48 2C 76 4D */ bl Free__7CMemoryFPCv lbl_8004E2E8: /* 8004E2E8 0004B248 38 C0 00 00 */ li r6, 0 /* 8004E2EC 0004B24C 3C 60 80 3D */ lis r3, lbl_803CCEE0@ha /* 8004E2F0 0004B250 90 DF 08 4C */ stw r6, 0x84c(r31) /* 8004E2F4 0004B254 38 83 CE E0 */ addi r4, r3, lbl_803CCEE0@l /* 8004E2F8 0004B258 3C 60 00 01 */ lis r3, 0x0000F3C8@ha /* 8004E2FC 0004B25C 38 1F 08 60 */ addi r0, r31, 0x860 /* 8004E300 0004B260 90 DF 08 50 */ stw r6, 0x850(r31) /* 8004E304 0004B264 38 63 F3 C8 */ addi r3, r3, 0x0000F3C8@l /* 8004E308 0004B268 38 A0 00 00 */ li r5, 0 /* 8004E30C 0004B26C 90 1F 08 58 */ stw r0, 0x858(r31) /* 8004E310 0004B270 90 1F 08 5C */ stw r0, 0x85c(r31) /* 8004E314 0004B274 90 1F 08 60 */ stw r0, 0x860(r31) /* 8004E318 0004B278 90 1F 08 64 */ stw r0, 0x864(r31) /* 8004E31C 0004B27C 90 DF 08 68 */ stw r6, 0x868(r31) /* 8004E320 0004B280 48 00 13 1D */ bl "__nw__36TOneStatic<22CStateManagerContainer>FUlPCcPCc" /* 8004E324 0004B284 7C 79 1B 79 */ or. r25, r3, r3 /* 8004E328 0004B288 41 82 00 6C */ beq lbl_8004E394 /* 8004E32C 0004B28C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004E330 0004B290 38 81 00 20 */ addi r4, r1, 0x20 /* 8004E334 0004B294 B0 01 00 20 */ sth r0, 0x20(r1) /* 8004E338 0004B298 4B FB DD A9 */ bl __ct__14CCameraManagerF9TUniqueId /* 8004E33C 0004B29C 38 79 03 C0 */ addi r3, r25, 0x3c0 /* 8004E340 0004B2A0 48 0F C6 E9 */ bl __ct__Q22SL18CSortedListManagerFv /* 8004E344 0004B2A4 3C 79 00 01 */ addis r3, r25, 1 /* 8004E348 0004B2A8 38 63 E3 D8 */ addi r3, r3, -7208 /* 8004E34C 0004B2AC 48 07 3F 89 */ bl __ct__10CWeaponMgrFv /* 8004E350 0004B2B0 3C 79 00 01 */ addis r3, r25, 1 /* 8004E354 0004B2B4 38 63 E3 EC */ addi r3, r3, -7188 /* 8004E358 0004B2B8 48 0E 13 71 */ bl __ct__18CFluidPlaneManagerFv /* 8004E35C 0004B2BC 3C 79 00 01 */ addis r3, r25, 1 /* 8004E360 0004B2C0 38 63 E5 10 */ addi r3, r3, -6896 /* 8004E364 0004B2C4 48 1C 4F 35 */ bl __ct__13CEnvFxManagerFv /* 8004E368 0004B2C8 3C 79 00 01 */ addis r3, r25, 1 /* 8004E36C 0004B2CC 38 63 F1 68 */ addi r3, r3, -3736 /* 8004E370 0004B2D0 48 19 73 99 */ bl __ct__20CActorModelParticlesFv /* 8004E374 0004B2D4 3C 79 00 01 */ addis r3, r25, 1 /* 8004E378 0004B2D8 38 63 F2 50 */ addi r3, r3, -3504 /* 8004E37C 0004B2DC 48 1D FF 75 */ bl __ct__14CRumbleManagerFv /* 8004E380 0004B2E0 3C 79 00 01 */ addis r3, r25, 1 /* 8004E384 0004B2E4 38 00 00 00 */ li r0, 0 /* 8004E388 0004B2E8 90 03 F3 44 */ stw r0, -0xcbc(r3) /* 8004E38C 0004B2EC 90 03 F3 70 */ stw r0, -0xc90(r3) /* 8004E390 0004B2F0 90 03 F3 9C */ stw r0, -0xc64(r3) lbl_8004E394: /* 8004E394 0004B2F4 93 3F 08 6C */ stw r25, 0x86c(r31) /* 8004E398 0004B2F8 3C 60 80 3D */ lis r3, lbl_803CCEE0@ha /* 8004E39C 0004B2FC 38 83 CE E0 */ addi r4, r3, lbl_803CCEE0@l /* 8004E3A0 0004B300 89 01 00 10 */ lbz r8, 0x10(r1) /* 8004E3A4 0004B304 80 BF 08 6C */ lwz r5, 0x86c(r31) /* 8004E3A8 0004B308 38 00 00 00 */ li r0, 0 /* 8004E3AC 0004B30C 88 E1 00 1C */ lbz r7, 0x1c(r1) /* 8004E3B0 0004B310 38 61 00 64 */ addi r3, r1, 0x64 /* 8004E3B4 0004B314 90 BF 08 70 */ stw r5, 0x870(r31) /* 8004E3B8 0004B318 38 A4 00 28 */ addi r5, r4, 0x28 /* 8004E3BC 0004B31C 88 C1 00 0C */ lbz r6, 0xc(r1) /* 8004E3C0 0004B320 81 3F 08 6C */ lwz r9, 0x86c(r31) /* 8004E3C4 0004B324 88 81 00 18 */ lbz r4, 0x18(r1) /* 8004E3C8 0004B328 39 29 03 C0 */ addi r9, r9, 0x3c0 /* 8004E3CC 0004B32C 91 3F 08 74 */ stw r9, 0x874(r31) /* 8004E3D0 0004B330 81 3F 08 6C */ lwz r9, 0x86c(r31) /* 8004E3D4 0004B334 3D 29 00 01 */ addis r9, r9, 1 /* 8004E3D8 0004B338 39 29 E3 D8 */ addi r9, r9, -7208 /* 8004E3DC 0004B33C 91 3F 08 78 */ stw r9, 0x878(r31) /* 8004E3E0 0004B340 81 3F 08 6C */ lwz r9, 0x86c(r31) /* 8004E3E4 0004B344 3D 29 00 01 */ addis r9, r9, 1 /* 8004E3E8 0004B348 39 29 E3 EC */ addi r9, r9, -7188 /* 8004E3EC 0004B34C 91 3F 08 7C */ stw r9, 0x87c(r31) /* 8004E3F0 0004B350 81 3F 08 6C */ lwz r9, 0x86c(r31) /* 8004E3F4 0004B354 3D 29 00 01 */ addis r9, r9, 1 /* 8004E3F8 0004B358 39 29 E5 10 */ addi r9, r9, -6896 /* 8004E3FC 0004B35C 91 3F 08 80 */ stw r9, 0x880(r31) /* 8004E400 0004B360 81 3F 08 6C */ lwz r9, 0x86c(r31) /* 8004E404 0004B364 3D 29 00 01 */ addis r9, r9, 1 /* 8004E408 0004B368 39 29 F1 68 */ addi r9, r9, -3736 /* 8004E40C 0004B36C 91 3F 08 84 */ stw r9, 0x884(r31) /* 8004E410 0004B370 81 3F 08 6C */ lwz r9, 0x86c(r31) /* 8004E414 0004B374 3D 29 00 01 */ addis r9, r9, 1 /* 8004E418 0004B378 39 29 F2 50 */ addi r9, r9, -3504 /* 8004E41C 0004B37C 91 3F 08 8C */ stw r9, 0x88c(r31) /* 8004E420 0004B380 99 1F 08 90 */ stb r8, 0x890(r31) /* 8004E424 0004B384 98 FF 08 91 */ stb r7, 0x891(r31) /* 8004E428 0004B388 90 1F 08 94 */ stw r0, 0x894(r31) /* 8004E42C 0004B38C 90 1F 08 98 */ stw r0, 0x898(r31) /* 8004E430 0004B390 90 1F 08 9C */ stw r0, 0x89c(r31) /* 8004E434 0004B394 90 1F 08 A0 */ stw r0, 0x8a0(r31) /* 8004E438 0004B398 98 DF 08 A4 */ stb r6, 0x8a4(r31) /* 8004E43C 0004B39C 98 9F 08 A5 */ stb r4, 0x8a5(r31) /* 8004E440 0004B3A0 90 1F 08 A8 */ stw r0, 0x8a8(r31) /* 8004E444 0004B3A4 90 1F 08 AC */ stw r0, 0x8ac(r31) /* 8004E448 0004B3A8 90 1F 08 B0 */ stw r0, 0x8b0(r31) /* 8004E44C 0004B3AC 90 1F 08 B4 */ stw r0, 0x8b4(r31) /* 8004E450 0004B3B0 80 9C 00 00 */ lwz r4, 0(r28) /* 8004E454 0004B3B4 90 9F 08 B8 */ stw r4, 0x8b8(r31) /* 8004E458 0004B3B8 80 DF 08 B8 */ lwz r6, 0x8b8(r31) /* 8004E45C 0004B3BC 80 86 00 04 */ lwz r4, 4(r6) /* 8004E460 0004B3C0 38 84 00 01 */ addi r4, r4, 1 /* 8004E464 0004B3C4 90 86 00 04 */ stw r4, 4(r6) /* 8004E468 0004B3C8 80 9A 00 00 */ lwz r4, 0(r26) /* 8004E46C 0004B3CC 90 9F 08 BC */ stw r4, 0x8bc(r31) /* 8004E470 0004B3D0 80 DF 08 BC */ lwz r6, 0x8bc(r31) /* 8004E474 0004B3D4 80 86 00 04 */ lwz r4, 4(r6) /* 8004E478 0004B3D8 38 84 00 01 */ addi r4, r4, 1 /* 8004E47C 0004B3DC 90 86 00 04 */ stw r4, 4(r6) /* 8004E480 0004B3E0 80 9B 00 00 */ lwz r4, 0(r27) /* 8004E484 0004B3E4 90 9F 08 C0 */ stw r4, 0x8c0(r31) /* 8004E488 0004B3E8 80 DF 08 C0 */ lwz r6, 0x8c0(r31) /* 8004E48C 0004B3EC 80 86 00 04 */ lwz r4, 4(r6) /* 8004E490 0004B3F0 38 84 00 01 */ addi r4, r4, 1 /* 8004E494 0004B3F4 90 86 00 04 */ stw r4, 4(r6) /* 8004E498 0004B3F8 80 9D 00 00 */ lwz r4, 0(r29) /* 8004E49C 0004B3FC 90 9F 08 C4 */ stw r4, 0x8c4(r31) /* 8004E4A0 0004B400 80 DF 08 C4 */ lwz r6, 0x8c4(r31) /* 8004E4A4 0004B404 80 86 00 04 */ lwz r4, 4(r6) /* 8004E4A8 0004B408 38 84 00 01 */ addi r4, r4, 1 /* 8004E4AC 0004B40C 90 86 00 04 */ stw r4, 4(r6) /* 8004E4B0 0004B410 80 9E 00 00 */ lwz r4, 0(r30) /* 8004E4B4 0004B414 90 9F 08 C8 */ stw r4, 0x8c8(r31) /* 8004E4B8 0004B418 80 DF 08 C8 */ lwz r6, 0x8c8(r31) /* 8004E4BC 0004B41C 80 86 00 04 */ lwz r4, 4(r6) /* 8004E4C0 0004B420 38 84 00 01 */ addi r4, r4, 1 /* 8004E4C4 0004B424 90 86 00 04 */ stw r4, 4(r6) /* 8004E4C8 0004B428 90 1F 08 CC */ stw r0, 0x8cc(r31) /* 8004E4CC 0004B42C 80 8D A3 90 */ lwz r4, kInvalidAreaId@sda21(r13) /* 8004E4D0 0004B430 90 9F 08 D0 */ stw r4, 0x8d0(r31) /* 8004E4D4 0004B434 90 1F 08 D4 */ stw r0, 0x8d4(r31) /* 8004E4D8 0004B438 90 1F 08 D8 */ stw r0, 0x8d8(r31) /* 8004E4DC 0004B43C 90 1F 08 DC */ stw r0, 0x8dc(r31) /* 8004E4E0 0004B440 90 1F 08 E4 */ stw r0, 0x8e4(r31) /* 8004E4E4 0004B444 90 1F 08 E8 */ stw r0, 0x8e8(r31) /* 8004E4E8 0004B448 90 1F 08 EC */ stw r0, 0x8ec(r31) /* 8004E4EC 0004B44C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 8004E4F0 0004B450 81 84 00 00 */ lwz r12, 0(r4) /* 8004E4F4 0004B454 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004E4F8 0004B458 7D 89 03 A6 */ mtctr r12 /* 8004E4FC 0004B45C 4E 80 04 21 */ bctrl /* 8004E500 0004B460 3B 3F 08 F0 */ addi r25, r31, 0x8f0 /* 8004E504 0004B464 38 81 00 64 */ addi r4, r1, 0x64 /* 8004E508 0004B468 7F 23 CB 78 */ mr r3, r25 /* 8004E50C 0004B46C 48 2F 29 9D */ bl __ct__6CTokenFRC6CToken /* 8004E510 0004B470 38 00 00 00 */ li r0, 0 /* 8004E514 0004B474 38 61 00 64 */ addi r3, r1, 0x64 /* 8004E518 0004B478 90 19 00 08 */ stw r0, 8(r25) /* 8004E51C 0004B47C 38 80 FF FF */ li r4, -1 /* 8004E520 0004B480 48 2F 29 21 */ bl __dt__6CTokenFv /* 8004E524 0004B484 38 7F 08 FC */ addi r3, r31, 0x8fc /* 8004E528 0004B488 38 80 00 00 */ li r4, 0 /* 8004E52C 0004B48C 48 2C 40 C1 */ bl __ct__9CRandom16FUi /* 8004E530 0004B490 38 A0 00 00 */ li r5, 0 /* 8004E534 0004B494 88 81 00 08 */ lbz r4, 8(r1) /* 8004E538 0004B498 90 BF 09 00 */ stw r5, 0x900(r31) /* 8004E53C 0004B49C 38 7F 0B 54 */ addi r3, r31, 0xb54 /* 8004E540 0004B4A0 88 01 00 14 */ lbz r0, 0x14(r1) /* 8004E544 0004B4A4 90 BF 09 04 */ stw r5, 0x904(r31) /* 8004E548 0004B4A8 90 BF 09 08 */ stw r5, 0x908(r31) /* 8004E54C 0004B4AC 90 BF 0B 3C */ stw r5, 0xb3c(r31) /* 8004E550 0004B4B0 98 9F 0B 40 */ stb r4, 0xb40(r31) /* 8004E554 0004B4B4 98 1F 0B 41 */ stb r0, 0xb41(r31) /* 8004E558 0004B4B8 90 BF 0B 44 */ stw r5, 0xb44(r31) /* 8004E55C 0004B4BC 90 BF 0B 48 */ stw r5, 0xb48(r31) /* 8004E560 0004B4C0 90 BF 0B 4C */ stw r5, 0xb4c(r31) /* 8004E564 0004B4C4 90 BF 0B 50 */ stw r5, 0xb50(r31) /* 8004E568 0004B4C8 48 2F B8 B9 */ bl __ct__11CFinalInputFv /* 8004E56C 0004B4CC 38 61 00 A8 */ addi r3, r1, 0xa8 /* 8004E570 0004B4D0 48 09 F2 1D */ bl __ct__17CCameraFilterPassFv /* 8004E574 0004B4D4 38 60 00 09 */ li r3, 9 /* 8004E578 0004B4D8 38 00 00 09 */ li r0, 9 /* 8004E57C 0004B4DC 90 7F 0B 84 */ stw r3, 0xb84(r31) /* 8004E580 0004B4E0 38 9F 0B 88 */ addi r4, r31, 0xb88 /* 8004E584 0004B4E4 38 A1 00 CC */ addi r5, r1, 0xcc /* 8004E588 0004B4E8 7C 09 03 A6 */ mtctr r0 lbl_8004E58C: /* 8004E58C 0004B4EC 28 04 00 00 */ cmplwi r4, 0 /* 8004E590 0004B4F0 41 82 00 64 */ beq lbl_8004E5F4 /* 8004E594 0004B4F4 80 61 00 A8 */ lwz r3, 0xa8(r1) /* 8004E598 0004B4F8 38 00 00 00 */ li r0, 0 /* 8004E59C 0004B4FC 90 64 00 00 */ stw r3, 0(r4) /* 8004E5A0 0004B500 80 61 00 AC */ lwz r3, 0xac(r1) /* 8004E5A4 0004B504 90 64 00 04 */ stw r3, 4(r4) /* 8004E5A8 0004B508 80 61 00 B0 */ lwz r3, 0xb0(r1) /* 8004E5AC 0004B50C 90 64 00 08 */ stw r3, 8(r4) /* 8004E5B0 0004B510 C0 01 00 B4 */ lfs f0, 0xb4(r1) /* 8004E5B4 0004B514 D0 04 00 0C */ stfs f0, 0xc(r4) /* 8004E5B8 0004B518 C0 01 00 B8 */ lfs f0, 0xb8(r1) /* 8004E5BC 0004B51C D0 04 00 10 */ stfs f0, 0x10(r4) /* 8004E5C0 0004B520 80 61 00 BC */ lwz r3, 0xbc(r1) /* 8004E5C4 0004B524 90 64 00 14 */ stw r3, 0x14(r4) /* 8004E5C8 0004B528 80 61 00 C0 */ lwz r3, 0xc0(r1) /* 8004E5CC 0004B52C 90 64 00 18 */ stw r3, 0x18(r4) /* 8004E5D0 0004B530 80 61 00 C4 */ lwz r3, 0xc4(r1) /* 8004E5D4 0004B534 90 64 00 1C */ stw r3, 0x1c(r4) /* 8004E5D8 0004B538 80 61 00 C8 */ lwz r3, 0xc8(r1) /* 8004E5DC 0004B53C 90 64 00 20 */ stw r3, 0x20(r4) /* 8004E5E0 0004B540 88 61 00 CC */ lbz r3, 0xcc(r1) /* 8004E5E4 0004B544 98 64 00 24 */ stb r3, 0x24(r4) /* 8004E5E8 0004B548 80 61 00 D0 */ lwz r3, 0xd0(r1) /* 8004E5EC 0004B54C 90 64 00 28 */ stw r3, 0x28(r4) /* 8004E5F0 0004B550 98 01 00 CC */ stb r0, 0xcc(r1) lbl_8004E5F4: /* 8004E5F4 0004B554 38 84 00 2C */ addi r4, r4, 0x2c /* 8004E5F8 0004B558 42 00 FF 94 */ bdnz lbl_8004E58C /* 8004E5FC 0004B55C 28 05 00 00 */ cmplwi r5, 0 /* 8004E600 0004B560 41 82 00 34 */ beq lbl_8004E634 /* 8004E604 0004B564 88 01 00 CC */ lbz r0, 0xcc(r1) /* 8004E608 0004B568 28 00 00 00 */ cmplwi r0, 0 /* 8004E60C 0004B56C 41 82 00 28 */ beq lbl_8004E634 /* 8004E610 0004B570 83 21 00 D0 */ lwz r25, 0xd0(r1) /* 8004E614 0004B574 28 19 00 00 */ cmplwi r25, 0 /* 8004E618 0004B578 41 82 00 1C */ beq lbl_8004E634 /* 8004E61C 0004B57C 41 82 00 10 */ beq lbl_8004E62C /* 8004E620 0004B580 7F 23 CB 78 */ mr r3, r25 /* 8004E624 0004B584 38 80 00 00 */ li r4, 0 /* 8004E628 0004B588 48 2F 28 19 */ bl __dt__6CTokenFv lbl_8004E62C: /* 8004E62C 0004B58C 7F 23 CB 78 */ mr r3, r25 /* 8004E630 0004B590 48 2C 73 01 */ bl Free__7CMemoryFPCv lbl_8004E634: /* 8004E634 0004B594 38 61 00 74 */ addi r3, r1, 0x74 /* 8004E638 0004B598 48 09 DA 05 */ bl __ct__15CCameraBlurPassFv /* 8004E63C 0004B59C 38 7F 0D 14 */ addi r3, r31, 0xd14 /* 8004E640 0004B5A0 38 A1 00 74 */ addi r5, r1, 0x74 /* 8004E644 0004B5A4 38 80 00 09 */ li r4, 9 /* 8004E648 0004B5A8 48 00 0C 99 */ bl sub_8004f2e0 /* 8004E64C 0004B5AC 88 01 00 80 */ lbz r0, 0x80(r1) /* 8004E650 0004B5B0 28 00 00 00 */ cmplwi r0, 0 /* 8004E654 0004B5B4 41 82 00 1C */ beq lbl_8004E670 /* 8004E658 0004B5B8 34 61 00 74 */ addic. r3, r1, 0x74 /* 8004E65C 0004B5BC 41 82 00 14 */ beq lbl_8004E670 /* 8004E660 0004B5C0 28 03 00 00 */ cmplwi r3, 0 /* 8004E664 0004B5C4 41 82 00 0C */ beq lbl_8004E670 /* 8004E668 0004B5C8 38 80 00 00 */ li r4, 0 /* 8004E66C 0004B5CC 48 2F 27 D5 */ bl __dt__6CTokenFv lbl_8004E670: /* 8004E670 0004B5D0 38 C0 00 00 */ li r6, 0 /* 8004E674 0004B5D4 38 00 FF FF */ li r0, -1 /* 8004E678 0004B5D8 98 C1 00 80 */ stb r6, 0x80(r1) /* 8004E67C 0004B5DC 38 7F 0E F8 */ addi r3, r31, 0xef8 /* 8004E680 0004B5E0 38 80 00 00 */ li r4, 0 /* 8004E684 0004B5E4 38 A0 00 00 */ li r5, 0 /* 8004E688 0004B5E8 90 1F 0E EC */ stw r0, 0xeec(r31) /* 8004E68C 0004B5EC 90 DF 0E F0 */ stw r6, 0xef0(r31) /* 8004E690 0004B5F0 90 1F 0E F4 */ stw r0, 0xef4(r31) /* 8004E694 0004B5F4 48 2C 5C B9 */ bl __ct__9CVector2iFii /* 8004E698 0004B5F8 38 7F 0F 00 */ addi r3, r31, 0xf00 /* 8004E69C 0004B5FC 38 80 00 00 */ li r4, 0 /* 8004E6A0 0004B600 38 A0 00 00 */ li r5, 0 /* 8004E6A4 0004B604 48 2C 5C A9 */ bl __ct__9CVector2iFii /* 8004E6A8 0004B608 39 40 FF FF */ li r10, -1 /* 8004E6AC 0004B60C 3C 60 80 3D */ lis r3, lbl_803CCEE0@ha /* 8004E6B0 0004B610 91 5F 0F 08 */ stw r10, 0xf08(r31) /* 8004E6B4 0004B614 38 83 CE E0 */ addi r4, r3, lbl_803CCEE0@l /* 8004E6B8 0004B618 C0 22 85 68 */ lfs f1, lbl_805AA288@sda21(r2) /* 8004E6BC 0004B61C 39 00 00 00 */ li r8, 0 /* 8004E6C0 0004B620 C0 02 85 64 */ lfs f0, lbl_805AA284@sda21(r2) /* 8004E6C4 0004B624 38 E0 00 02 */ li r7, 2 /* 8004E6C8 0004B628 D0 3F 0F 0C */ stfs f1, 0xf0c(r31) /* 8004E6CC 0004B62C 38 DF 0F 48 */ addi r6, r31, 0xf48 /* 8004E6D0 0004B630 38 1F 0F 60 */ addi r0, r31, 0xf60 /* 8004E6D4 0004B634 38 60 20 0C */ li r3, 0x200c /* 8004E6D8 0004B638 D0 3F 0F 10 */ stfs f1, 0xf10(r31) /* 8004E6DC 0004B63C 38 A0 00 00 */ li r5, 0 /* 8004E6E0 0004B640 D0 3F 0F 14 */ stfs f1, 0xf14(r31) /* 8004E6E4 0004B644 A1 2D A3 8C */ lhz r9, kInvalidUniqueId@sda21(r13) /* 8004E6E8 0004B648 B1 3F 0F 18 */ sth r9, 0xf18(r31) /* 8004E6EC 0004B64C D0 3F 0F 1C */ stfs f1, 0xf1c(r31) /* 8004E6F0 0004B650 91 1F 0F 20 */ stw r8, 0xf20(r31) /* 8004E6F4 0004B654 D0 3F 0F 24 */ stfs f1, 0xf24(r31) /* 8004E6F8 0004B658 D0 3F 0F 28 */ stfs f1, 0xf28(r31) /* 8004E6FC 0004B65C D0 1F 0F 2C */ stfs f0, 0xf2c(r31) /* 8004E700 0004B660 D0 1F 0F 30 */ stfs f0, 0xf30(r31) /* 8004E704 0004B664 90 FF 0F 34 */ stw r7, 0xf34(r31) /* 8004E708 0004B668 A0 ED A3 8C */ lhz r7, kInvalidUniqueId@sda21(r13) /* 8004E70C 0004B66C B0 FF 0F 38 */ sth r7, 0xf38(r31) /* 8004E710 0004B670 90 DF 0F 40 */ stw r6, 0xf40(r31) /* 8004E714 0004B674 90 DF 0F 44 */ stw r6, 0xf44(r31) /* 8004E718 0004B678 90 DF 0F 48 */ stw r6, 0xf48(r31) /* 8004E71C 0004B67C 90 DF 0F 4C */ stw r6, 0xf4c(r31) /* 8004E720 0004B680 91 1F 0F 50 */ stw r8, 0xf50(r31) /* 8004E724 0004B684 90 1F 0F 58 */ stw r0, 0xf58(r31) /* 8004E728 0004B688 90 1F 0F 5C */ stw r0, 0xf5c(r31) /* 8004E72C 0004B68C 90 1F 0F 60 */ stw r0, 0xf60(r31) /* 8004E730 0004B690 90 1F 0F 64 */ stw r0, 0xf64(r31) /* 8004E734 0004B694 91 1F 0F 68 */ stw r8, 0xf68(r31) /* 8004E738 0004B698 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004E73C 0004B69C B0 1F 0F 6C */ sth r0, 0xf6c(r31) /* 8004E740 0004B6A0 91 1F 0F 70 */ stw r8, 0xf70(r31) /* 8004E744 0004B6A4 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004E748 0004B6A8 B0 1F 0F 74 */ sth r0, 0xf74(r31) /* 8004E74C 0004B6AC A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8004E750 0004B6B0 B0 1F 0F 76 */ sth r0, 0xf76(r31) /* 8004E754 0004B6B4 D0 3F 0F 78 */ stfs f1, 0xf78(r31) /* 8004E758 0004B6B8 91 1F 0F 7C */ stw r8, 0xf7c(r31) /* 8004E75C 0004B6BC 91 1F 0F 80 */ stw r8, 0xf80(r31) /* 8004E760 0004B6C0 91 5F 0F 84 */ stw r10, 0xf84(r31) /* 8004E764 0004B6C4 91 5F 0F 88 */ stw r10, 0xf88(r31) /* 8004E768 0004B6C8 D0 3F 0F 8C */ stfs f1, 0xf8c(r31) /* 8004E76C 0004B6CC 91 1F 0F 90 */ stw r8, 0xf90(r31) /* 8004E770 0004B6D0 88 1F 0F 94 */ lbz r0, 0xf94(r31) /* 8004E774 0004B6D4 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 /* 8004E778 0004B6D8 98 1F 0F 94 */ stb r0, 0xf94(r31) /* 8004E77C 0004B6DC 88 1F 0F 94 */ lbz r0, 0xf94(r31) /* 8004E780 0004B6E0 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 /* 8004E784 0004B6E4 98 1F 0F 94 */ stb r0, 0xf94(r31) /* 8004E788 0004B6E8 88 1F 0F 94 */ lbz r0, 0xf94(r31) /* 8004E78C 0004B6EC 51 00 2E B4 */ rlwimi r0, r8, 5, 0x1a, 0x1a /* 8004E790 0004B6F0 98 1F 0F 94 */ stb r0, 0xf94(r31) /* 8004E794 0004B6F4 88 1F 0F 94 */ lbz r0, 0xf94(r31) /* 8004E798 0004B6F8 51 00 26 F6 */ rlwimi r0, r8, 4, 0x1b, 0x1b /* 8004E79C 0004B6FC 98 1F 0F 94 */ stb r0, 0xf94(r31) /* 8004E7A0 0004B700 88 1F 0F 94 */ lbz r0, 0xf94(r31) /* 8004E7A4 0004B704 51 00 1F 38 */ rlwimi r0, r8, 3, 0x1c, 0x1c /* 8004E7A8 0004B708 98 1F 0F 94 */ stb r0, 0xf94(r31) /* 8004E7AC 0004B70C 88 1F 0F 94 */ lbz r0, 0xf94(r31) /* 8004E7B0 0004B710 51 00 17 7A */ rlwimi r0, r8, 2, 0x1d, 0x1d /* 8004E7B4 0004B714 98 1F 0F 94 */ stb r0, 0xf94(r31) /* 8004E7B8 0004B718 88 1F 0F 94 */ lbz r0, 0xf94(r31) /* 8004E7BC 0004B71C 51 00 0F BC */ rlwimi r0, r8, 1, 0x1e, 0x1e /* 8004E7C0 0004B720 98 1F 0F 94 */ stb r0, 0xf94(r31) /* 8004E7C4 0004B724 48 2C 70 A9 */ bl __nw__FUlPCcPCc /* 8004E7C8 0004B728 7C 64 1B 79 */ or. r4, r3, r3 /* 8004E7CC 0004B72C 41 82 00 10 */ beq lbl_8004E7DC /* 8004E7D0 0004B730 38 80 00 00 */ li r4, 0 /* 8004E7D4 0004B734 4B FC 18 65 */ bl __ct__11CObjectListF15EGameObjectList /* 8004E7D8 0004B738 7C 64 1B 78 */ mr r4, r3 lbl_8004E7DC: /* 8004E7DC 0004B73C 7C 04 00 D0 */ neg r0, r4 /* 8004E7E0 0004B740 3B 3F 08 0C */ addi r25, r31, 0x80c /* 8004E7E4 0004B744 7C 03 23 78 */ or r3, r0, r4 /* 8004E7E8 0004B748 38 01 00 5C */ addi r0, r1, 0x5c /* 8004E7EC 0004B74C 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004E7F0 0004B750 90 81 00 60 */ stw r4, 0x60(r1) /* 8004E7F4 0004B754 7C 00 C8 40 */ cmplw r0, r25 /* 8004E7F8 0004B758 98 61 00 5C */ stb r3, 0x5c(r1) /* 8004E7FC 0004B75C 41 82 00 30 */ beq lbl_8004E82C /* 8004E800 0004B760 88 19 00 00 */ lbz r0, 0(r25) /* 8004E804 0004B764 28 00 00 00 */ cmplwi r0, 0 /* 8004E808 0004B768 41 82 00 0C */ beq lbl_8004E814 /* 8004E80C 0004B76C 80 79 00 04 */ lwz r3, 4(r25) /* 8004E810 0004B770 48 2C 71 21 */ bl Free__7CMemoryFPCv lbl_8004E814: /* 8004E814 0004B774 88 61 00 5C */ lbz r3, 0x5c(r1) /* 8004E818 0004B778 38 00 00 00 */ li r0, 0 /* 8004E81C 0004B77C 98 79 00 00 */ stb r3, 0(r25) /* 8004E820 0004B780 80 61 00 60 */ lwz r3, 0x60(r1) /* 8004E824 0004B784 90 79 00 04 */ stw r3, 4(r25) /* 8004E828 0004B788 98 01 00 5C */ stb r0, 0x5c(r1) lbl_8004E82C: /* 8004E82C 0004B78C 88 01 00 5C */ lbz r0, 0x5c(r1) /* 8004E830 0004B790 28 00 00 00 */ cmplwi r0, 0 /* 8004E834 0004B794 41 82 00 0C */ beq lbl_8004E840 /* 8004E838 0004B798 80 61 00 60 */ lwz r3, 0x60(r1) /* 8004E83C 0004B79C 48 2C 70 F5 */ bl Free__7CMemoryFPCv lbl_8004E840: /* 8004E840 0004B7A0 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004E844 0004B7A4 38 60 20 0C */ li r3, 0x200c /* 8004E848 0004B7A8 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004E84C 0004B7AC 38 A0 00 00 */ li r5, 0 /* 8004E850 0004B7B0 48 2C 70 1D */ bl __nw__FUlPCcPCc /* 8004E854 0004B7B4 7C 64 1B 79 */ or. r4, r3, r3 /* 8004E858 0004B7B8 41 82 00 0C */ beq lbl_8004E864 /* 8004E85C 0004B7BC 48 16 A0 09 */ bl __ct__10CActorListFv /* 8004E860 0004B7C0 7C 64 1B 78 */ mr r4, r3 lbl_8004E864: /* 8004E864 0004B7C4 7C 04 00 D0 */ neg r0, r4 /* 8004E868 0004B7C8 3B 3F 08 14 */ addi r25, r31, 0x814 /* 8004E86C 0004B7CC 7C 03 23 78 */ or r3, r0, r4 /* 8004E870 0004B7D0 38 01 00 54 */ addi r0, r1, 0x54 /* 8004E874 0004B7D4 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004E878 0004B7D8 90 81 00 58 */ stw r4, 0x58(r1) /* 8004E87C 0004B7DC 7C 00 C8 40 */ cmplw r0, r25 /* 8004E880 0004B7E0 98 61 00 54 */ stb r3, 0x54(r1) /* 8004E884 0004B7E4 41 82 00 30 */ beq lbl_8004E8B4 /* 8004E888 0004B7E8 88 19 00 00 */ lbz r0, 0(r25) /* 8004E88C 0004B7EC 28 00 00 00 */ cmplwi r0, 0 /* 8004E890 0004B7F0 41 82 00 0C */ beq lbl_8004E89C /* 8004E894 0004B7F4 80 79 00 04 */ lwz r3, 4(r25) /* 8004E898 0004B7F8 48 2C 70 99 */ bl Free__7CMemoryFPCv lbl_8004E89C: /* 8004E89C 0004B7FC 88 61 00 54 */ lbz r3, 0x54(r1) /* 8004E8A0 0004B800 38 00 00 00 */ li r0, 0 /* 8004E8A4 0004B804 98 79 00 00 */ stb r3, 0(r25) /* 8004E8A8 0004B808 80 61 00 58 */ lwz r3, 0x58(r1) /* 8004E8AC 0004B80C 90 79 00 04 */ stw r3, 4(r25) /* 8004E8B0 0004B810 98 01 00 54 */ stb r0, 0x54(r1) lbl_8004E8B4: /* 8004E8B4 0004B814 88 01 00 54 */ lbz r0, 0x54(r1) /* 8004E8B8 0004B818 28 00 00 00 */ cmplwi r0, 0 /* 8004E8BC 0004B81C 41 82 00 0C */ beq lbl_8004E8C8 /* 8004E8C0 0004B820 80 61 00 58 */ lwz r3, 0x58(r1) /* 8004E8C4 0004B824 48 2C 70 6D */ bl Free__7CMemoryFPCv lbl_8004E8C8: /* 8004E8C8 0004B828 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004E8CC 0004B82C 38 60 20 0C */ li r3, 0x200c /* 8004E8D0 0004B830 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004E8D4 0004B834 38 A0 00 00 */ li r5, 0 /* 8004E8D8 0004B838 48 2C 6F 95 */ bl __nw__FUlPCcPCc /* 8004E8DC 0004B83C 7C 64 1B 79 */ or. r4, r3, r3 /* 8004E8E0 0004B840 41 82 00 0C */ beq lbl_8004E8EC /* 8004E8E4 0004B844 48 16 9F 0D */ bl __ct__17CPhysicsActorListFv /* 8004E8E8 0004B848 7C 64 1B 78 */ mr r4, r3 lbl_8004E8EC: /* 8004E8EC 0004B84C 7C 04 00 D0 */ neg r0, r4 /* 8004E8F0 0004B850 3B 3F 08 1C */ addi r25, r31, 0x81c /* 8004E8F4 0004B854 7C 03 23 78 */ or r3, r0, r4 /* 8004E8F8 0004B858 38 01 00 4C */ addi r0, r1, 0x4c /* 8004E8FC 0004B85C 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004E900 0004B860 90 81 00 50 */ stw r4, 0x50(r1) /* 8004E904 0004B864 7C 00 C8 40 */ cmplw r0, r25 /* 8004E908 0004B868 98 61 00 4C */ stb r3, 0x4c(r1) /* 8004E90C 0004B86C 41 82 00 30 */ beq lbl_8004E93C /* 8004E910 0004B870 88 19 00 00 */ lbz r0, 0(r25) /* 8004E914 0004B874 28 00 00 00 */ cmplwi r0, 0 /* 8004E918 0004B878 41 82 00 0C */ beq lbl_8004E924 /* 8004E91C 0004B87C 80 79 00 04 */ lwz r3, 4(r25) /* 8004E920 0004B880 48 2C 70 11 */ bl Free__7CMemoryFPCv lbl_8004E924: /* 8004E924 0004B884 88 61 00 4C */ lbz r3, 0x4c(r1) /* 8004E928 0004B888 38 00 00 00 */ li r0, 0 /* 8004E92C 0004B88C 98 79 00 00 */ stb r3, 0(r25) /* 8004E930 0004B890 80 61 00 50 */ lwz r3, 0x50(r1) /* 8004E934 0004B894 90 79 00 04 */ stw r3, 4(r25) /* 8004E938 0004B898 98 01 00 4C */ stb r0, 0x4c(r1) lbl_8004E93C: /* 8004E93C 0004B89C 88 01 00 4C */ lbz r0, 0x4c(r1) /* 8004E940 0004B8A0 28 00 00 00 */ cmplwi r0, 0 /* 8004E944 0004B8A4 41 82 00 0C */ beq lbl_8004E950 /* 8004E948 0004B8A8 80 61 00 50 */ lwz r3, 0x50(r1) /* 8004E94C 0004B8AC 48 2C 6F E5 */ bl Free__7CMemoryFPCv lbl_8004E950: /* 8004E950 0004B8B0 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004E954 0004B8B4 38 60 20 0C */ li r3, 0x200c /* 8004E958 0004B8B8 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004E95C 0004B8BC 38 A0 00 00 */ li r5, 0 /* 8004E960 0004B8C0 48 2C 6F 0D */ bl __nw__FUlPCcPCc /* 8004E964 0004B8C4 7C 64 1B 79 */ or. r4, r3, r3 /* 8004E968 0004B8C8 41 82 00 0C */ beq lbl_8004E974 /* 8004E96C 0004B8CC 48 16 9E 11 */ bl __ct__15CGameCameraListFv /* 8004E970 0004B8D0 7C 64 1B 78 */ mr r4, r3 lbl_8004E974: /* 8004E974 0004B8D4 7C 04 00 D0 */ neg r0, r4 /* 8004E978 0004B8D8 3B 3F 08 24 */ addi r25, r31, 0x824 /* 8004E97C 0004B8DC 7C 03 23 78 */ or r3, r0, r4 /* 8004E980 0004B8E0 38 01 00 44 */ addi r0, r1, 0x44 /* 8004E984 0004B8E4 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004E988 0004B8E8 90 81 00 48 */ stw r4, 0x48(r1) /* 8004E98C 0004B8EC 7C 00 C8 40 */ cmplw r0, r25 /* 8004E990 0004B8F0 98 61 00 44 */ stb r3, 0x44(r1) /* 8004E994 0004B8F4 41 82 00 30 */ beq lbl_8004E9C4 /* 8004E998 0004B8F8 88 19 00 00 */ lbz r0, 0(r25) /* 8004E99C 0004B8FC 28 00 00 00 */ cmplwi r0, 0 /* 8004E9A0 0004B900 41 82 00 0C */ beq lbl_8004E9AC /* 8004E9A4 0004B904 80 79 00 04 */ lwz r3, 4(r25) /* 8004E9A8 0004B908 48 2C 6F 89 */ bl Free__7CMemoryFPCv lbl_8004E9AC: /* 8004E9AC 0004B90C 88 61 00 44 */ lbz r3, 0x44(r1) /* 8004E9B0 0004B910 38 00 00 00 */ li r0, 0 /* 8004E9B4 0004B914 98 79 00 00 */ stb r3, 0(r25) /* 8004E9B8 0004B918 80 61 00 48 */ lwz r3, 0x48(r1) /* 8004E9BC 0004B91C 90 79 00 04 */ stw r3, 4(r25) /* 8004E9C0 0004B920 98 01 00 44 */ stb r0, 0x44(r1) lbl_8004E9C4: /* 8004E9C4 0004B924 88 01 00 44 */ lbz r0, 0x44(r1) /* 8004E9C8 0004B928 28 00 00 00 */ cmplwi r0, 0 /* 8004E9CC 0004B92C 41 82 00 0C */ beq lbl_8004E9D8 /* 8004E9D0 0004B930 80 61 00 48 */ lwz r3, 0x48(r1) /* 8004E9D4 0004B934 48 2C 6F 5D */ bl Free__7CMemoryFPCv lbl_8004E9D8: /* 8004E9D8 0004B938 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004E9DC 0004B93C 38 60 20 0C */ li r3, 0x200c /* 8004E9E0 0004B940 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004E9E4 0004B944 38 A0 00 00 */ li r5, 0 /* 8004E9E8 0004B948 48 2C 6E 85 */ bl __nw__FUlPCcPCc /* 8004E9EC 0004B94C 7C 64 1B 79 */ or. r4, r3, r3 /* 8004E9F0 0004B950 41 82 00 0C */ beq lbl_8004E9FC /* 8004E9F4 0004B954 48 16 9A BD */ bl __ct__14CGameLightListFv /* 8004E9F8 0004B958 7C 64 1B 78 */ mr r4, r3 lbl_8004E9FC: /* 8004E9FC 0004B95C 7C 04 00 D0 */ neg r0, r4 /* 8004EA00 0004B960 3B 3F 08 2C */ addi r25, r31, 0x82c /* 8004EA04 0004B964 7C 03 23 78 */ or r3, r0, r4 /* 8004EA08 0004B968 38 01 00 3C */ addi r0, r1, 0x3c /* 8004EA0C 0004B96C 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004EA10 0004B970 90 81 00 40 */ stw r4, 0x40(r1) /* 8004EA14 0004B974 7C 00 C8 40 */ cmplw r0, r25 /* 8004EA18 0004B978 98 61 00 3C */ stb r3, 0x3c(r1) /* 8004EA1C 0004B97C 41 82 00 30 */ beq lbl_8004EA4C /* 8004EA20 0004B980 88 19 00 00 */ lbz r0, 0(r25) /* 8004EA24 0004B984 28 00 00 00 */ cmplwi r0, 0 /* 8004EA28 0004B988 41 82 00 0C */ beq lbl_8004EA34 /* 8004EA2C 0004B98C 80 79 00 04 */ lwz r3, 4(r25) /* 8004EA30 0004B990 48 2C 6F 01 */ bl Free__7CMemoryFPCv lbl_8004EA34: /* 8004EA34 0004B994 88 61 00 3C */ lbz r3, 0x3c(r1) /* 8004EA38 0004B998 38 00 00 00 */ li r0, 0 /* 8004EA3C 0004B99C 98 79 00 00 */ stb r3, 0(r25) /* 8004EA40 0004B9A0 80 61 00 40 */ lwz r3, 0x40(r1) /* 8004EA44 0004B9A4 90 79 00 04 */ stw r3, 4(r25) /* 8004EA48 0004B9A8 98 01 00 3C */ stb r0, 0x3c(r1) lbl_8004EA4C: /* 8004EA4C 0004B9AC 88 01 00 3C */ lbz r0, 0x3c(r1) /* 8004EA50 0004B9B0 28 00 00 00 */ cmplwi r0, 0 /* 8004EA54 0004B9B4 41 82 00 0C */ beq lbl_8004EA60 /* 8004EA58 0004B9B8 80 61 00 40 */ lwz r3, 0x40(r1) /* 8004EA5C 0004B9BC 48 2C 6E D5 */ bl Free__7CMemoryFPCv lbl_8004EA60: /* 8004EA60 0004B9C0 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004EA64 0004B9C4 38 60 20 0C */ li r3, 0x200c /* 8004EA68 0004B9C8 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004EA6C 0004B9CC 38 A0 00 00 */ li r5, 0 /* 8004EA70 0004B9D0 48 2C 6D FD */ bl __nw__FUlPCcPCc /* 8004EA74 0004B9D4 7C 64 1B 79 */ or. r4, r3, r3 /* 8004EA78 0004B9D8 41 82 00 0C */ beq lbl_8004EA84 /* 8004EA7C 0004B9DC 48 16 9C 8D */ bl __ct__16CListeningAiListFv /* 8004EA80 0004B9E0 7C 64 1B 78 */ mr r4, r3 lbl_8004EA84: /* 8004EA84 0004B9E4 7C 04 00 D0 */ neg r0, r4 /* 8004EA88 0004B9E8 3B 3F 08 34 */ addi r25, r31, 0x834 /* 8004EA8C 0004B9EC 7C 03 23 78 */ or r3, r0, r4 /* 8004EA90 0004B9F0 38 01 00 34 */ addi r0, r1, 0x34 /* 8004EA94 0004B9F4 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004EA98 0004B9F8 90 81 00 38 */ stw r4, 0x38(r1) /* 8004EA9C 0004B9FC 7C 00 C8 40 */ cmplw r0, r25 /* 8004EAA0 0004BA00 98 61 00 34 */ stb r3, 0x34(r1) /* 8004EAA4 0004BA04 41 82 00 30 */ beq lbl_8004EAD4 /* 8004EAA8 0004BA08 88 19 00 00 */ lbz r0, 0(r25) /* 8004EAAC 0004BA0C 28 00 00 00 */ cmplwi r0, 0 /* 8004EAB0 0004BA10 41 82 00 0C */ beq lbl_8004EABC /* 8004EAB4 0004BA14 80 79 00 04 */ lwz r3, 4(r25) /* 8004EAB8 0004BA18 48 2C 6E 79 */ bl Free__7CMemoryFPCv lbl_8004EABC: /* 8004EABC 0004BA1C 88 61 00 34 */ lbz r3, 0x34(r1) /* 8004EAC0 0004BA20 38 00 00 00 */ li r0, 0 /* 8004EAC4 0004BA24 98 79 00 00 */ stb r3, 0(r25) /* 8004EAC8 0004BA28 80 61 00 38 */ lwz r3, 0x38(r1) /* 8004EACC 0004BA2C 90 79 00 04 */ stw r3, 4(r25) /* 8004EAD0 0004BA30 98 01 00 34 */ stb r0, 0x34(r1) lbl_8004EAD4: /* 8004EAD4 0004BA34 88 01 00 34 */ lbz r0, 0x34(r1) /* 8004EAD8 0004BA38 28 00 00 00 */ cmplwi r0, 0 /* 8004EADC 0004BA3C 41 82 00 0C */ beq lbl_8004EAE8 /* 8004EAE0 0004BA40 80 61 00 38 */ lwz r3, 0x38(r1) /* 8004EAE4 0004BA44 48 2C 6E 4D */ bl Free__7CMemoryFPCv lbl_8004EAE8: /* 8004EAE8 0004BA48 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004EAEC 0004BA4C 38 60 20 0C */ li r3, 0x200c /* 8004EAF0 0004BA50 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004EAF4 0004BA54 38 A0 00 00 */ li r5, 0 /* 8004EAF8 0004BA58 48 2C 6D 75 */ bl __nw__FUlPCcPCc /* 8004EAFC 0004BA5C 7C 64 1B 79 */ or. r4, r3, r3 /* 8004EB00 0004BA60 41 82 00 0C */ beq lbl_8004EB0C /* 8004EB04 0004BA64 48 16 9B 69 */ bl __ct__15CAiWaypointListFv /* 8004EB08 0004BA68 7C 64 1B 78 */ mr r4, r3 lbl_8004EB0C: /* 8004EB0C 0004BA6C 7C 04 00 D0 */ neg r0, r4 /* 8004EB10 0004BA70 3B 3F 08 3C */ addi r25, r31, 0x83c /* 8004EB14 0004BA74 7C 03 23 78 */ or r3, r0, r4 /* 8004EB18 0004BA78 38 01 00 2C */ addi r0, r1, 0x2c /* 8004EB1C 0004BA7C 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004EB20 0004BA80 90 81 00 30 */ stw r4, 0x30(r1) /* 8004EB24 0004BA84 7C 00 C8 40 */ cmplw r0, r25 /* 8004EB28 0004BA88 98 61 00 2C */ stb r3, 0x2c(r1) /* 8004EB2C 0004BA8C 41 82 00 30 */ beq lbl_8004EB5C /* 8004EB30 0004BA90 88 19 00 00 */ lbz r0, 0(r25) /* 8004EB34 0004BA94 28 00 00 00 */ cmplwi r0, 0 /* 8004EB38 0004BA98 41 82 00 0C */ beq lbl_8004EB44 /* 8004EB3C 0004BA9C 80 79 00 04 */ lwz r3, 4(r25) /* 8004EB40 0004BAA0 48 2C 6D F1 */ bl Free__7CMemoryFPCv lbl_8004EB44: /* 8004EB44 0004BAA4 88 61 00 2C */ lbz r3, 0x2c(r1) /* 8004EB48 0004BAA8 38 00 00 00 */ li r0, 0 /* 8004EB4C 0004BAAC 98 79 00 00 */ stb r3, 0(r25) /* 8004EB50 0004BAB0 80 61 00 30 */ lwz r3, 0x30(r1) /* 8004EB54 0004BAB4 90 79 00 04 */ stw r3, 4(r25) /* 8004EB58 0004BAB8 98 01 00 2C */ stb r0, 0x2c(r1) lbl_8004EB5C: /* 8004EB5C 0004BABC 88 01 00 2C */ lbz r0, 0x2c(r1) /* 8004EB60 0004BAC0 28 00 00 00 */ cmplwi r0, 0 /* 8004EB64 0004BAC4 41 82 00 0C */ beq lbl_8004EB70 /* 8004EB68 0004BAC8 80 61 00 30 */ lwz r3, 0x30(r1) /* 8004EB6C 0004BACC 48 2C 6D C5 */ bl Free__7CMemoryFPCv lbl_8004EB70: /* 8004EB70 0004BAD0 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004EB74 0004BAD4 38 60 20 0C */ li r3, 0x200c /* 8004EB78 0004BAD8 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004EB7C 0004BADC 38 A0 00 00 */ li r5, 0 /* 8004EB80 0004BAE0 48 2C 6C ED */ bl __nw__FUlPCcPCc /* 8004EB84 0004BAE4 7C 64 1B 79 */ or. r4, r3, r3 /* 8004EB88 0004BAE8 41 82 00 0C */ beq lbl_8004EB94 /* 8004EB8C 0004BAEC 48 16 9A 31 */ bl __ct__20CPlatformAndDoorListFv /* 8004EB90 0004BAF0 7C 64 1B 78 */ mr r4, r3 lbl_8004EB94: /* 8004EB94 0004BAF4 7C 04 00 D0 */ neg r0, r4 /* 8004EB98 0004BAF8 3B 3F 08 44 */ addi r25, r31, 0x844 /* 8004EB9C 0004BAFC 7C 03 23 78 */ or r3, r0, r4 /* 8004EBA0 0004BB00 38 01 00 24 */ addi r0, r1, 0x24 /* 8004EBA4 0004BB04 54 63 0F FE */ srwi r3, r3, 0x1f /* 8004EBA8 0004BB08 90 81 00 28 */ stw r4, 0x28(r1) /* 8004EBAC 0004BB0C 7C 00 C8 40 */ cmplw r0, r25 /* 8004EBB0 0004BB10 98 61 00 24 */ stb r3, 0x24(r1) /* 8004EBB4 0004BB14 41 82 00 30 */ beq lbl_8004EBE4 /* 8004EBB8 0004BB18 88 19 00 00 */ lbz r0, 0(r25) /* 8004EBBC 0004BB1C 28 00 00 00 */ cmplwi r0, 0 /* 8004EBC0 0004BB20 41 82 00 0C */ beq lbl_8004EBCC /* 8004EBC4 0004BB24 80 79 00 04 */ lwz r3, 4(r25) /* 8004EBC8 0004BB28 48 2C 6D 69 */ bl Free__7CMemoryFPCv lbl_8004EBCC: /* 8004EBCC 0004BB2C 88 61 00 24 */ lbz r3, 0x24(r1) /* 8004EBD0 0004BB30 38 00 00 00 */ li r0, 0 /* 8004EBD4 0004BB34 98 79 00 00 */ stb r3, 0(r25) /* 8004EBD8 0004BB38 80 61 00 28 */ lwz r3, 0x28(r1) /* 8004EBDC 0004BB3C 90 79 00 04 */ stw r3, 4(r25) /* 8004EBE0 0004BB40 98 01 00 24 */ stb r0, 0x24(r1) lbl_8004EBE4: /* 8004EBE4 0004BB44 88 01 00 24 */ lbz r0, 0x24(r1) /* 8004EBE8 0004BB48 28 00 00 00 */ cmplwi r0, 0 /* 8004EBEC 0004BB4C 41 82 00 0C */ beq lbl_8004EBF8 /* 8004EBF0 0004BB50 80 61 00 28 */ lwz r3, 0x28(r1) /* 8004EBF4 0004BB54 48 2C 6D 3D */ bl Free__7CMemoryFPCv lbl_8004EBF8: /* 8004EBF8 0004BB58 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 8004EBFC 0004BB5C 3C 80 80 04 */ lis r4, RendererDrawCallback__13CStateManagerFPCvPCvi@ha /* 8004EC00 0004BB60 38 84 79 B8 */ addi r4, r4, RendererDrawCallback__13CStateManagerFPCvPCvi@l /* 8004EC04 0004BB64 7F E5 FB 78 */ mr r5, r31 /* 8004EC08 0004BB68 81 83 00 00 */ lwz r12, 0(r3) /* 8004EC0C 0004BB6C 81 8C 00 44 */ lwz r12, 0x44(r12) /* 8004EC10 0004BB70 7D 89 03 A6 */ mtctr r12 /* 8004EC14 0004BB74 4E 80 04 21 */ bctrl /* 8004EC18 0004BB78 3C 60 80 05 */ lis r3, MemoryAllocatorAllocationFailedCallback__13CStateManagerFPCvUi@ha /* 8004EC1C 0004BB7C 7F E4 FB 78 */ mr r4, r31 /* 8004EC20 0004BB80 38 63 B5 38 */ addi r3, r3, MemoryAllocatorAllocationFailedCallback__13CStateManagerFPCvUi@l /* 8004EC24 0004BB84 48 2C 6C D1 */ bl SetOutOfMemoryCallback__7CMemoryFPFPCvUi_CbPCv /* 8004EC28 0004BB88 38 BF 09 08 */ addi r5, r31, 0x908 /* 8004EC2C 0004BB8C 80 7F 09 08 */ lwz r3, 0x908(r31) /* 8004EC30 0004BB90 2C 03 00 8C */ cmpwi r3, 0x8c /* 8004EC34 0004BB94 40 80 00 40 */ bge lbl_8004EC74 /* 8004EC38 0004BB98 54 60 10 3A */ slwi r0, r3, 2 /* 8004EC3C 0004BB9C 20 83 00 8C */ subfic r4, r3, 0x8c /* 8004EC40 0004BBA0 7C 65 02 14 */ add r3, r5, r0 /* 8004EC44 0004BBA4 38 00 00 00 */ li r0, 0 /* 8004EC48 0004BBA8 7C 89 03 A6 */ mtctr r4 /* 8004EC4C 0004BBAC 2C 04 00 00 */ cmpwi r4, 0 /* 8004EC50 0004BBB0 38 63 00 04 */ addi r3, r3, 4 /* 8004EC54 0004BBB4 40 81 00 18 */ ble lbl_8004EC6C lbl_8004EC58: /* 8004EC58 0004BBB8 28 03 00 00 */ cmplwi r3, 0 /* 8004EC5C 0004BBBC 41 82 00 08 */ beq lbl_8004EC64 /* 8004EC60 0004BBC0 90 03 00 00 */ stw r0, 0(r3) lbl_8004EC64: /* 8004EC64 0004BBC4 38 63 00 04 */ addi r3, r3, 4 /* 8004EC68 0004BBC8 42 00 FF F0 */ bdnz lbl_8004EC58 lbl_8004EC6C: /* 8004EC6C 0004BBCC 38 00 00 8C */ li r0, 0x8c /* 8004EC70 0004BBD0 90 1F 09 08 */ stw r0, 0x908(r31) lbl_8004EC74: /* 8004EC74 0004BBD4 3C 60 80 0E */ lis r3, LoadTrigger__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EC78 0004BBD8 3C 80 80 0E */ lis r4, LoadDamageableTrigger__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EC7C 0004BBDC 38 03 9A 3C */ addi r0, r3, LoadTrigger__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EC80 0004BBE0 3C 60 80 0D */ lis r3, LoadActor__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EC84 0004BBE4 90 1F 09 1C */ stw r0, 0x91c(r31) /* 8004EC88 0004BBE8 38 04 93 80 */ addi r0, r4, LoadDamageableTrigger__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EC8C 0004BBEC 3C A0 80 0D */ lis r5, LoadEnemy__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EC90 0004BBF0 3C 80 80 0D */ lis r4, LoadWaypoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EC94 0004BBF4 90 1F 09 74 */ stw r0, 0x974(r31) /* 8004EC98 0004BBF8 38 03 77 58 */ addi r0, r3, LoadActor__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EC9C 0004BBFC 3C 60 80 0D */ lis r3, LoadDoor__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECA0 0004BC00 3D 20 80 0D */ lis r9, LoadEffect__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECA4 0004BC04 90 1F 09 0C */ stw r0, 0x90c(r31) /* 8004ECA8 0004BC08 38 05 73 08 */ addi r0, r5, LoadEnemy__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ECAC 0004BC0C 3D 00 80 0D */ lis r8, LoadTimer__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECB0 0004BC10 3C E0 80 0D */ lis r7, LoadCounter__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECB4 0004BC14 90 1F 09 10 */ stw r0, 0x910(r31) /* 8004ECB8 0004BC18 38 04 6B 58 */ addi r0, r4, LoadWaypoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ECBC 0004BC1C 3C C0 80 0D */ lis r6, LoadSound__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECC0 0004BC20 3C A0 80 0D */ lis r5, LoadPlatform__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECC4 0004BC24 90 1F 09 14 */ stw r0, 0x914(r31) /* 8004ECC8 0004BC28 38 03 68 18 */ addi r0, r3, LoadDoor__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ECCC 0004BC2C 3C 80 80 0D */ lis r4, LoadGenerator__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECD0 0004BC30 3C 60 80 0E */ lis r3, LoadDock__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECD4 0004BC34 90 1F 09 18 */ stw r0, 0x918(r31) /* 8004ECD8 0004BC38 38 09 64 A8 */ addi r0, r9, LoadEffect__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ECDC 0004BC3C 3F 60 80 0D */ lis r27, LoadCamera__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECE0 0004BC40 3F 40 80 0D */ lis r26, LoadCameraWaypoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECE4 0004BC44 90 1F 09 28 */ stw r0, 0x928(r31) /* 8004ECE8 0004BC48 38 08 63 A0 */ addi r0, r8, LoadTimer__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ECEC 0004BC4C 3F 20 80 0D */ lis r25, LoadNewIntroBoss__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECF0 0004BC50 3D 80 80 0E */ lis r12, LoadSpawnPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ECF4 0004BC54 90 1F 09 20 */ stw r0, 0x920(r31) /* 8004ECF8 0004BC58 38 07 62 B8 */ addi r0, r7, LoadCounter__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ECFC 0004BC5C 3D 60 80 0D */ lis r11, LoadCameraHint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED00 0004BC60 3D 40 80 0E */ lis r10, LoadCameraHintTrigger__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED04 0004BC64 90 1F 09 24 */ stw r0, 0x924(r31) /* 8004ED08 0004BC68 38 06 5F 98 */ addi r0, r6, LoadSound__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED0C 0004BC6C 3D 20 80 0D */ lis r9, LoadPickup__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED10 0004BC70 3D 00 80 0E */ lis r8, LoadJumpPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED14 0004BC74 90 1F 09 30 */ stw r0, 0x930(r31) /* 8004ED18 0004BC78 38 05 58 20 */ addi r0, r5, LoadPlatform__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED1C 0004BC7C 3C E0 80 0D */ lis r7, LoadRelay__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED20 0004BC80 3C C0 80 0D */ lis r6, LoadRandomRelay__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED24 0004BC84 90 1F 09 2C */ stw r0, 0x92c(r31) /* 8004ED28 0004BC88 38 04 61 8C */ addi r0, r4, LoadGenerator__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED2C 0004BC8C 3C A0 80 0D */ lis r5, LoadFaultyRelay__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED30 0004BC90 3C 80 80 0D */ lis r4, LoadBeetle__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED34 0004BC94 90 1F 09 34 */ stw r0, 0x934(r31) /* 8004ED38 0004BC98 38 03 82 18 */ addi r0, r3, LoadDock__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED3C 0004BC9C 3C 60 80 0D */ lis r3, LoadHUDMemo__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004ED40 0004BCA0 3B 7B 54 68 */ addi r27, r27, LoadCamera__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED44 0004BCA4 90 1F 09 38 */ stw r0, 0x938(r31) /* 8004ED48 0004BCA8 3B 5A 57 40 */ addi r26, r26, LoadCameraWaypoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED4C 0004BCAC 38 19 08 14 */ addi r0, r25, LoadNewIntroBoss__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED50 0004BCB0 39 8C 83 3C */ addi r12, r12, LoadSpawnPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED54 0004BCB4 93 7F 09 3C */ stw r27, 0x93c(r31) /* 8004ED58 0004BCB8 39 6B 7E 3C */ addi r11, r11, LoadCameraHint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED5C 0004BCBC 39 4A 97 C8 */ addi r10, r10, LoadCameraHintTrigger__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED60 0004BCC0 39 29 73 10 */ addi r9, r9, LoadPickup__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED64 0004BCC4 93 5F 09 40 */ stw r26, 0x940(r31) /* 8004ED68 0004BCC8 39 08 83 34 */ addi r8, r8, LoadJumpPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED6C 0004BCCC 38 E7 48 8C */ addi r7, r7, LoadRelay__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED70 0004BCD0 38 C6 47 9C */ addi r6, r6, LoadRandomRelay__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED74 0004BCD4 90 1F 09 44 */ stw r0, 0x944(r31) /* 8004ED78 0004BCD8 38 A5 46 94 */ addi r5, r5, LoadFaultyRelay__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED7C 0004BCDC 38 84 6F 60 */ addi r4, r4, LoadBeetle__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED80 0004BCE0 38 03 45 80 */ addi r0, r3, LoadHUDMemo__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004ED84 0004BCE4 91 9F 09 48 */ stw r12, 0x948(r31) /* 8004ED88 0004BCE8 91 7F 09 4C */ stw r11, 0x94c(r31) /* 8004ED8C 0004BCEC 91 5F 0A D8 */ stw r10, 0xad8(r31) /* 8004ED90 0004BCF0 91 3F 09 50 */ stw r9, 0x950(r31) /* 8004ED94 0004BCF4 91 1F 09 54 */ stw r8, 0x954(r31) /* 8004ED98 0004BCF8 90 FF 09 58 */ stw r7, 0x958(r31) /* 8004ED9C 0004BCFC 90 DF 09 5C */ stw r6, 0x95c(r31) /* 8004EDA0 0004BD00 90 BF 09 60 */ stw r5, 0x960(r31) /* 8004EDA4 0004BD04 90 9F 09 64 */ stw r4, 0x964(r31) /* 8004EDA8 0004BD08 90 1F 09 68 */ stw r0, 0x968(r31) /* 8004EDAC 0004BD0C 3C 60 80 0D */ lis r3, LoadCameraFilterKeyframe__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDB0 0004BD10 3C 80 80 0D */ lis r4, LoadCameraBlurKeyframe__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDB4 0004BD14 38 03 44 08 */ addi r0, r3, LoadCameraFilterKeyframe__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EDB8 0004BD18 3C 60 80 0D */ lis r3, LoadDebris__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDBC 0004BD1C 90 1F 09 6C */ stw r0, 0x96c(r31) /* 8004EDC0 0004BD20 38 04 42 E8 */ addi r0, r4, LoadCameraBlurKeyframe__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EDC4 0004BD24 3C A0 80 0D */ lis r5, LoadCameraShaker__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDC8 0004BD28 3C 80 80 0D */ lis r4, LoadActorKeyframe__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDCC 0004BD2C 90 1F 09 70 */ stw r0, 0x970(r31) /* 8004EDD0 0004BD30 38 03 40 78 */ addi r0, r3, LoadDebris__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EDD4 0004BD34 3C 60 80 0D */ lis r3, LoadAIKeyframe__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDD8 0004BD38 3D 20 80 0E */ lis r9, LoadWater__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDDC 0004BD3C 90 1F 09 78 */ stw r0, 0x978(r31) /* 8004EDE0 0004BD40 38 05 3A A4 */ addi r0, r5, LoadCameraShaker__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EDE4 0004BD44 3D 00 80 0E */ lis r8, LoadSteam__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDE8 0004BD48 3C E0 80 0E */ lis r7, LoadRipple__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDEC 0004BD4C 90 1F 09 7C */ stw r0, 0x97c(r31) /* 8004EDF0 0004BD50 38 04 35 8C */ addi r0, r4, LoadActorKeyframe__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EDF4 0004BD54 3C C0 80 0D */ lis r6, LoadWarWasp__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDF8 0004BD58 3C A0 80 0D */ lis r5, LoadMapStation__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EDFC 0004BD5C 90 1F 09 80 */ stw r0, 0x980(r31) /* 8004EE00 0004BD60 38 03 35 54 */ addi r0, r3, LoadAIKeyframe__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE04 0004BD64 3C 80 80 0D */ lis r4, LoadSpacePirate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE08 0004BD68 3C 60 80 0D */ lis r3, LoadCoverPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE0C 0004BD6C 90 1F 0A 10 */ stw r0, 0xa10(r31) /* 8004EE10 0004BD70 38 09 88 F4 */ addi r0, r9, LoadWater__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE14 0004BD74 3F 60 80 0D */ lis r27, LoadSpiderBallWaypoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE18 0004BD78 3F 40 80 0D */ lis r26, LoadBloodFlower__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE1C 0004BD7C 90 1F 09 8C */ stw r0, 0x98c(r31) /* 8004EE20 0004BD80 38 08 86 CC */ addi r0, r8, LoadSteam__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE24 0004BD84 3F 20 80 0D */ lis r25, LoadPathCamera__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE28 0004BD88 3D 80 80 0D */ lis r12, LoadGrapplePoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE2C 0004BD8C 90 1F 0A 24 */ stw r0, 0xa24(r31) /* 8004EE30 0004BD90 38 07 85 D4 */ addi r0, r7, LoadRipple__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE34 0004BD94 3D 60 80 0D */ lis r11, LoadFlickerBat__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE38 0004BD98 3D 40 80 0D */ lis r10, LoadChozoGhost__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE3C 0004BD9C 90 1F 0A 28 */ stw r0, 0xa28(r31) /* 8004EE40 0004BDA0 38 06 6C B0 */ addi r0, r6, LoadWarWasp__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE44 0004BDA4 3D 20 80 0D */ lis r9, LoadPuddleSpore__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE48 0004BDA8 3D 00 80 0D */ lis r8, LoadDebugCameraWaypoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE4C 0004BDAC 90 1F 09 90 */ stw r0, 0x990(r31) /* 8004EE50 0004BDB0 38 05 2E 2C */ addi r0, r5, LoadMapStation__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE54 0004BDB4 3C E0 80 0D */ lis r7, LoadSpiderBallAttractionSurface__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE58 0004BDB8 3C C0 80 0D */ lis r6, LoadPuddleToadGamma__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE5C 0004BDBC 90 1F 09 94 */ stw r0, 0x994(r31) /* 8004EE60 0004BDC0 38 04 2B CC */ addi r0, r4, LoadSpacePirate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE64 0004BDC4 3C A0 80 0D */ lis r5, LoadFireFlea__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE68 0004BDC8 3C 80 80 0D */ lis r4, LoadDistanceFog__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE6C 0004BDCC 90 1F 09 9C */ stw r0, 0x99c(r31) /* 8004EE70 0004BDD0 38 03 28 DC */ addi r0, r3, LoadCoverPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE74 0004BDD4 3C 60 80 0D */ lis r3, LoadDockAreaChange__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EE78 0004BDD8 3B 7B 27 2C */ addi r27, r27, LoadSpiderBallWaypoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE7C 0004BDDC 90 1F 09 B4 */ stw r0, 0x9b4(r31) /* 8004EE80 0004BDE0 3B 5A 24 8C */ addi r26, r26, LoadBloodFlower__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE84 0004BDE4 38 19 53 28 */ addi r0, r25, LoadPathCamera__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE88 0004BDE8 39 8C 23 0C */ addi r12, r12, LoadGrapplePoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE8C 0004BDEC 93 7F 09 BC */ stw r27, 0x9bc(r31) /* 8004EE90 0004BDF0 39 6B 20 C8 */ addi r11, r11, LoadFlickerBat__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE94 0004BDF4 39 4A 1C B4 */ addi r10, r10, LoadChozoGhost__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE98 0004BDF8 39 29 19 C4 */ addi r9, r9, LoadPuddleSpore__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EE9C 0004BDFC 93 5F 09 C0 */ stw r26, 0x9c0(r31) /* 8004EEA0 0004BE00 39 08 18 20 */ addi r8, r8, LoadDebugCameraWaypoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EEA4 0004BE04 38 E7 18 F0 */ addi r7, r7, LoadSpiderBallAttractionSurface__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EEA8 0004BE08 38 C6 15 38 */ addi r6, r6, LoadPuddleToadGamma__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EEAC 0004BE0C 90 1F 09 C8 */ stw r0, 0x9c8(r31) /* 8004EEB0 0004BE10 38 A5 13 3C */ addi r5, r5, LoadFireFlea__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EEB4 0004BE14 38 84 0F 0C */ addi r4, r4, LoadDistanceFog__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EEB8 0004BE18 38 03 0D 04 */ addi r0, r3, LoadDockAreaChange__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EEBC 0004BE1C 91 9F 09 CC */ stw r12, 0x9cc(r31) /* 8004EEC0 0004BE20 91 7F 09 C4 */ stw r11, 0x9c4(r31) /* 8004EEC4 0004BE24 91 5F 09 AC */ stw r10, 0x9ac(r31) /* 8004EEC8 0004BE28 91 3F 09 D0 */ stw r9, 0x9d0(r31) /* 8004EECC 0004BE2C 91 1F 09 D4 */ stw r8, 0x9d4(r31) /* 8004EED0 0004BE30 90 FF 09 D8 */ stw r7, 0x9d8(r31) /* 8004EED4 0004BE34 90 DF 09 DC */ stw r6, 0x9dc(r31) /* 8004EED8 0004BE38 90 BF 09 E4 */ stw r5, 0x9e4(r31) /* 8004EEDC 0004BE3C 90 9F 09 E0 */ stw r4, 0x9e0(r31) /* 8004EEE0 0004BE40 90 1F 09 EC */ stw r0, 0x9ec(r31) /* 8004EEE4 0004BE44 3C 60 80 0D */ lis r3, LoadActorRotate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EEE8 0004BE48 3C 80 80 0D */ lis r4, LoadSpecialFunction__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EEEC 0004BE4C 38 03 32 E8 */ addi r0, r3, LoadActorRotate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EEF0 0004BE50 3C 60 80 0D */ lis r3, LoadMetaree__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EEF4 0004BE54 90 1F 09 F0 */ stw r0, 0x9f0(r31) /* 8004EEF8 0004BE58 38 04 30 74 */ addi r0, r4, LoadSpecialFunction__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EEFC 0004BE5C 3C A0 80 0D */ lis r5, LoadSpankWeed__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF00 0004BE60 3C 80 80 0D */ lis r4, LoadParasite__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF04 0004BE64 90 1F 09 F4 */ stw r0, 0x9f4(r31) /* 8004EF08 0004BE68 38 03 0A 4C */ addi r0, r3, LoadMetaree__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF0C 0004BE6C 3C 60 80 0D */ lis r3, LoadPlayerHint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF10 0004BE70 3D 20 80 0D */ lis r9, LoadRipper__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF14 0004BE74 90 1F 09 E8 */ stw r0, 0x9e8(r31) /* 8004EF18 0004BE78 38 05 10 E8 */ addi r0, r5, LoadSpankWeed__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF1C 0004BE7C 3D 00 80 0D */ lis r8, LoadPickupGenerator__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF20 0004BE80 3C E0 80 0D */ lis r7, LoadPointOfInterest__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF24 0004BE84 90 1F 09 F8 */ stw r0, 0x9f8(r31) /* 8004EF28 0004BE88 38 04 00 FC */ addi r0, r4, LoadParasite__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF2C 0004BE8C 3C C0 80 0D */ lis r6, LoadDrone__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF30 0004BE90 3C A0 80 0D */ lis r5, LoadMetroid__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF34 0004BE94 90 1F 0A 00 */ stw r0, 0xa00(r31) /* 8004EF38 0004BE98 38 03 7D 60 */ addi r0, r3, LoadPlayerHint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF3C 0004BE9C 3C 80 80 0D */ lis r4, LoadDebrisExtended__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF40 0004BEA0 3C 60 80 0D */ lis r3, LoadBallTrigger__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF44 0004BEA4 90 1F 0A 04 */ stw r0, 0xa04(r31) /* 8004EF48 0004BEA8 38 09 FE 90 */ addi r0, r9, LoadRipper__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF4C 0004BEAC 3F 60 80 0D */ lis r27, LoadTargetingPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF50 0004BEB0 3F 40 80 0D */ lis r26, LoadEMPulse__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF54 0004BEB4 90 1F 0A 08 */ stw r0, 0xa08(r31) /* 8004EF58 0004BEB8 38 08 FD 98 */ addi r0, r8, LoadPickupGenerator__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF5C 0004BEBC 3F 20 80 0D */ lis r25, LoadIceSheegoth__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF60 0004BEC0 3D 80 80 0D */ lis r12, LoadPlayerActor__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF64 0004BEC4 90 1F 0A 0C */ stw r0, 0xa0c(r31) /* 8004EF68 0004BEC8 38 07 7C 60 */ addi r0, r7, LoadPointOfInterest__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF6C 0004BECC 3D 60 80 0D */ lis r11, LoadFlaahgra__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF70 0004BED0 3D 40 80 0D */ lis r10, LoadAreaAttributes__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF74 0004BED4 90 1F 0A 14 */ stw r0, 0xa14(r31) /* 8004EF78 0004BED8 38 06 D8 6C */ addi r0, r6, LoadDrone__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF7C 0004BEDC 3D 20 80 0D */ lis r9, LoadFishCloud__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF80 0004BEE0 3D 00 80 0D */ lis r8, LoadFishCloudModifier__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF84 0004BEE4 90 1F 0A 18 */ stw r0, 0xa18(r31) /* 8004EF88 0004BEE8 38 05 FA AC */ addi r0, r5, LoadMetroid__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF8C 0004BEEC 3C E0 80 0D */ lis r7, LoadVisorFlare__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF90 0004BEF0 3C C0 80 0D */ lis r6, LoadWorldTeleporter__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EF94 0004BEF4 90 1F 0A 1C */ stw r0, 0xa1c(r31) /* 8004EF98 0004BEF8 38 04 3C 08 */ addi r0, r4, LoadDebrisExtended__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EF9C 0004BEFC 3C A0 80 0D */ lis r5, LoadVisorGoo__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EFA0 0004BF00 3C 80 80 0D */ lis r4, LoadJellyZap__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EFA4 0004BF04 90 1F 0A 20 */ stw r0, 0xa20(r31) /* 8004EFA8 0004BF08 38 03 F7 14 */ addi r0, r3, LoadBallTrigger__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFAC 0004BF0C 3C 60 80 0D */ lis r3, LoadControllerAction__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004EFB0 0004BF10 3B 7B F6 44 */ addi r27, r27, LoadTargetingPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFB4 0004BF14 90 1F 0A 2C */ stw r0, 0xa2c(r31) /* 8004EFB8 0004BF18 38 1A F4 FC */ addi r0, r26, LoadEMPulse__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFBC 0004BF1C 3B 39 F3 10 */ addi r25, r25, LoadIceSheegoth__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFC0 0004BF20 39 8C EE F4 */ addi r12, r12, LoadPlayerActor__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFC4 0004BF24 93 7F 0A 30 */ stw r27, 0xa30(r31) /* 8004EFC8 0004BF28 39 6B 05 C8 */ addi r11, r11, LoadFlaahgra__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFCC 0004BF2C 39 4A 0D CC */ addi r10, r10, LoadAreaAttributes__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFD0 0004BF30 39 29 E8 08 */ addi r9, r9, LoadFishCloud__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFD4 0004BF34 90 1F 0A 34 */ stw r0, 0xa34(r31) /* 8004EFD8 0004BF38 39 08 E6 BC */ addi r8, r8, LoadFishCloudModifier__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFDC 0004BF3C 38 E7 D0 9C */ addi r7, r7, LoadVisorFlare__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFE0 0004BF40 38 06 CC B0 */ addi r0, r6, LoadWorldTeleporter__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFE4 0004BF44 93 3F 0A 38 */ stw r25, 0xa38(r31) /* 8004EFE8 0004BF48 38 A5 C7 EC */ addi r5, r5, LoadVisorGoo__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFEC 0004BF4C 38 84 C4 84 */ addi r4, r4, LoadJellyZap__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFF0 0004BF50 38 63 CB 74 */ addi r3, r3, LoadControllerAction__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004EFF4 0004BF54 91 9F 0A 3C */ stw r12, 0xa3c(r31) /* 8004EFF8 0004BF58 91 7F 0A 40 */ stw r11, 0xa40(r31) /* 8004EFFC 0004BF5C 91 5F 0A 44 */ stw r10, 0xa44(r31) /* 8004F000 0004BF60 91 3F 0A 48 */ stw r9, 0xa48(r31) /* 8004F004 0004BF64 91 1F 0A 4C */ stw r8, 0xa4c(r31) /* 8004F008 0004BF68 90 FF 0A 50 */ stw r7, 0xa50(r31) /* 8004F00C 0004BF6C 90 1F 0A 54 */ stw r0, 0xa54(r31) /* 8004F010 0004BF70 90 BF 0A 58 */ stw r5, 0xa58(r31) /* 8004F014 0004BF74 90 9F 0A 5C */ stw r4, 0xa5c(r31) /* 8004F018 0004BF78 90 7F 0A 60 */ stw r3, 0xa60(r31) /* 8004F01C 0004BF7C 3C 60 80 0D */ lis r3, LoadSwitch__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F020 0004BF80 3C 80 80 0D */ lis r4, LoadPlayerStateChange__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F024 0004BF84 38 A3 CA 9C */ addi r5, r3, LoadSwitch__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F028 0004BF88 3C 60 80 0D */ lis r3, LoadThardus__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F02C 0004BF8C 90 BF 0A 64 */ stw r5, 0xa64(r31) /* 8004F030 0004BF90 38 C4 C9 94 */ addi r6, r4, LoadPlayerStateChange__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F034 0004BF94 3C A0 80 0D */ lis r5, LoadSaveStation__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F038 0004BF98 3C 80 80 0D */ lis r4, LoadWallCrawlerSwarm__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F03C 0004BF9C 90 DF 0A 68 */ stw r6, 0xa68(r31) /* 8004F040 0004BFA0 38 C3 BC 24 */ addi r6, r3, LoadThardus__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F044 0004BFA4 3C 60 80 0D */ lis r3, LoadAiJumpPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F048 0004BFA8 3D 00 80 0D */ lis r8, LoadFlaahgraTentacle__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F04C 0004BFAC 90 DF 0A 6C */ stw r6, 0xa6c(r31) /* 8004F050 0004BFB0 38 A5 C9 8C */ addi r5, r5, LoadSaveStation__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F054 0004BFB4 3C E0 80 0D */ lis r7, LoadRoomAcoustics__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F058 0004BFB8 3C C0 80 0D */ lis r6, LoadFlyingPirate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F05C 0004BFBC 90 BF 0A 70 */ stw r5, 0xa70(r31) /* 8004F060 0004BFC0 39 24 B7 A4 */ addi r9, r4, LoadWallCrawlerSwarm__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F064 0004BFC4 3C A0 80 0D */ lis r5, LoadColorModulate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F068 0004BFC8 3C 80 80 0D */ lis r4, LoadThardusRockProjectile__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F06C 0004BFCC 91 3F 0A 74 */ stw r9, 0xa74(r31) /* 8004F070 0004BFD0 39 23 27 F4 */ addi r9, r3, LoadAiJumpPoint__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F074 0004BFD4 3C 60 80 0D */ lis r3, LoadMidi__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F078 0004BFD8 3F 60 80 0D */ lis r27, LoadStreamedMusic__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F07C 0004BFDC 91 3F 0A 78 */ stw r9, 0xa78(r31) /* 8004F080 0004BFE0 39 08 B5 D8 */ addi r8, r8, LoadFlaahgraTentacle__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F084 0004BFE4 3F 40 80 0D */ lis r26, LoadRepulsor__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F088 0004BFE8 3F 20 80 0D */ lis r25, LoadGunTurret__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F08C 0004BFEC 91 1F 0A 7C */ stw r8, 0xa7c(r31) /* 8004F090 0004BFF0 38 E7 EC 4C */ addi r7, r7, LoadRoomAcoustics__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F094 0004BFF4 3D 80 80 0D */ lis r12, LoadFogVolume__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F098 0004BFF8 3D 60 80 0D */ lis r11, LoadBabygoth__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F09C 0004BFFC 90 FF 0A 80 */ stw r7, 0xa80(r31) /* 8004F0A0 0004C000 38 C6 29 FC */ addi r6, r6, LoadFlyingPirate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0A4 0004C004 3D 40 80 0D */ lis r10, LoadEyeBall__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F0A8 0004C008 3D 20 80 0D */ lis r9, LoadRadialDamage__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F0AC 0004C00C 90 DF 09 A0 */ stw r6, 0x9a0(r31) /* 8004F0B0 0004C010 38 A5 33 E8 */ addi r5, r5, LoadColorModulate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0B4 0004C014 3D 00 80 0D */ lis r8, LoadScriptCameraPitchVolume__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F0B8 0004C018 3C E0 80 0D */ lis r7, LoadElitePirate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F0BC 0004C01C 90 BF 0A 84 */ stw r5, 0xa84(r31) /* 8004F0C0 0004C020 38 84 B2 8C */ addi r4, r4, LoadThardusRockProjectile__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0C4 0004C024 3C C0 80 0D */ lis r6, LoadMetroidBeta__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F0C8 0004C028 3C A0 80 0D */ lis r5, LoadEnvFxDensityController__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F0CC 0004C02C 90 9F 0A 88 */ stw r4, 0xa88(r31) /* 8004F0D0 0004C030 3B 83 B1 84 */ addi r28, r3, LoadMidi__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0D4 0004C034 3C 80 80 0D */ lis r4, LoadMagdolite__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F0D8 0004C038 3C 60 80 0D */ lis r3, LoadTeamAiMgr__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F0DC 0004C03C 93 9F 0A 8C */ stw r28, 0xa8c(r31) /* 8004F0E0 0004C040 3B 7B B0 3C */ addi r27, r27, LoadStreamedMusic__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0E4 0004C044 3B 5A AF 44 */ addi r26, r26, LoadRepulsor__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0E8 0004C048 3B 39 AB F8 */ addi r25, r25, LoadGunTurret__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0EC 0004C04C 93 7F 0A 90 */ stw r27, 0xa90(r31) /* 8004F0F0 0004C050 39 8C 2E 34 */ addi r12, r12, LoadFogVolume__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0F4 0004C054 39 6B AA 0C */ addi r11, r11, LoadBabygoth__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0F8 0004C058 39 4A A7 0C */ addi r10, r10, LoadEyeBall__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F0FC 0004C05C 90 1F 0A 94 */ stw r0, 0xa94(r31) /* 8004F100 0004C060 39 29 A5 4C */ addi r9, r9, LoadRadialDamage__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F104 0004C064 39 08 A4 00 */ addi r8, r8, LoadScriptCameraPitchVolume__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F108 0004C068 38 E7 A1 F4 */ addi r7, r7, LoadElitePirate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F10C 0004C06C 93 5F 0A 98 */ stw r26, 0xa98(r31) /* 8004F110 0004C070 38 C6 F8 98 */ addi r6, r6, LoadMetroidBeta__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F114 0004C074 38 A5 A0 20 */ addi r5, r5, LoadEnvFxDensityController__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F118 0004C078 38 84 9C 3C */ addi r4, r4, LoadMagdolite__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F11C 0004C07C 93 3F 0A 9C */ stw r25, 0xa9c(r31) /* 8004F120 0004C080 38 03 9B 60 */ addi r0, r3, LoadTeamAiMgr__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F124 0004C084 91 9F 0A A0 */ stw r12, 0xaa0(r31) /* 8004F128 0004C088 91 7F 0A A4 */ stw r11, 0xaa4(r31) /* 8004F12C 0004C08C 91 5F 0A A8 */ stw r10, 0xaa8(r31) /* 8004F130 0004C090 91 3F 0A AC */ stw r9, 0xaac(r31) /* 8004F134 0004C094 91 1F 0A B0 */ stw r8, 0xab0(r31) /* 8004F138 0004C098 90 FF 09 A4 */ stw r7, 0x9a4(r31) /* 8004F13C 0004C09C 90 DF 09 A8 */ stw r6, 0x9a8(r31) /* 8004F140 0004C0A0 90 BF 0A B4 */ stw r5, 0xab4(r31) /* 8004F144 0004C0A4 90 9F 0A B8 */ stw r4, 0xab8(r31) /* 8004F148 0004C0A8 90 1F 0A BC */ stw r0, 0xabc(r31) /* 8004F14C 0004C0AC 3C 60 80 0D */ lis r3, LoadSnakeWeedSwarm__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F150 0004C0B0 3C 80 80 0D */ lis r4, LoadActorContraption__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F154 0004C0B4 38 03 97 2C */ addi r0, r3, LoadSnakeWeedSwarm__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F158 0004C0B8 3C 60 80 0D */ lis r3, LoadAtomicAlpha__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F15C 0004C0BC 90 1F 0A C0 */ stw r0, 0xac0(r31) /* 8004F160 0004C0C0 38 04 93 34 */ addi r0, r4, LoadActorContraption__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F164 0004C0C4 3C A0 80 0D */ lis r5, LoadOcculus__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F168 0004C0C8 3C 80 80 0D */ lis r4, LoadGeemer__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F16C 0004C0CC 90 1F 0A C4 */ stw r0, 0xac4(r31) /* 8004F170 0004C0D0 38 03 8A 24 */ addi r0, r3, LoadAtomicAlpha__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F174 0004C0D4 3C 60 80 0D */ lis r3, LoadSpindleCamera__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F178 0004C0D8 3D 00 80 0D */ lis r8, LoadRumbleEffect__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F17C 0004C0DC 90 1F 0A D4 */ stw r0, 0xad4(r31) /* 8004F180 0004C0E0 38 05 90 08 */ addi r0, r5, LoadOcculus__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F184 0004C0E4 3C E0 80 0D */ lis r7, LoadAmbientAI__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F188 0004C0E8 3C C0 80 0D */ lis r6, LoadAtomicBeta__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F18C 0004C0EC 90 1F 0A C8 */ stw r0, 0xac8(r31) /* 8004F190 0004C0F0 38 04 8C 7C */ addi r0, r4, LoadGeemer__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F194 0004C0F4 3C A0 80 0C */ lis r5, LoadIceZoomer__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F198 0004C0F8 3C 80 80 0C */ lis r4, LoadPuffer__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F19C 0004C0FC 90 1F 0A CC */ stw r0, 0xacc(r31) /* 8004F1A0 0004C100 38 03 49 94 */ addi r0, r3, LoadSpindleCamera__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F1A4 0004C104 3C 60 80 0C */ lis r3, LoadTryclops__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1A8 0004C108 3F C0 80 0C */ lis r30, LoadRidley__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1AC 0004C10C 90 1F 0A D0 */ stw r0, 0xad0(r31) /* 8004F1B0 0004C110 38 08 88 10 */ addi r0, r8, LoadRumbleEffect__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F1B4 0004C114 3F A0 80 0C */ lis r29, LoadSeedling__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1B8 0004C118 3F 80 80 0C */ lis r28, LoadThermalHeatFader__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1BC 0004C11C 90 1F 0A DC */ stw r0, 0xadc(r31) /* 8004F1C0 0004C120 38 07 84 34 */ addi r0, r7, LoadAmbientAI__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F1C4 0004C124 3F 60 80 0C */ lis r27, LoadBurrower__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1C8 0004C128 3F 40 80 0C */ lis r26, LoadScriptBeam__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1CC 0004C12C 90 1F 0A E0 */ stw r0, 0xae0(r31) /* 8004F1D0 0004C130 38 00 00 00 */ li r0, 0 /* 8004F1D4 0004C134 3D 80 80 0C */ lis r12, LoadMetroidPrimeRelay__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1D8 0004C138 3D 60 80 0C */ lis r11, LoadWorldLightFader__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1DC 0004C13C 90 1F 0A E4 */ stw r0, 0xae4(r31) /* 8004F1E0 0004C140 38 C6 81 24 */ addi r6, r6, LoadAtomicBeta__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F1E4 0004C144 3D 40 80 0C */ lis r10, LoadMetroidPrimeEssence__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1E8 0004C148 3D 20 80 0C */ lis r9, LoadMazeNode__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1EC 0004C14C 90 DF 0A E8 */ stw r6, 0xae8(r31) /* 8004F1F0 0004C150 38 A5 7D 9C */ addi r5, r5, LoadIceZoomer__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F1F4 0004C154 3D 00 80 0C */ lis r8, LoadOmegaPirate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1F8 0004C158 3C E0 80 0C */ lis r7, LoadPhazonPool__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F1FC 0004C15C 90 BF 0A EC */ stw r5, 0xaec(r31) /* 8004F200 0004C160 38 84 79 68 */ addi r4, r4, LoadPuffer__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F204 0004C164 3C C0 80 0C */ lis r6, LoadPhazonHealingNodule__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F208 0004C168 3C A0 80 0D */ lis r5, LoadNewCameraShaker__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F20C 0004C16C 90 9F 0A F0 */ stw r4, 0xaf0(r31) /* 8004F210 0004C170 3B 23 77 28 */ addi r25, r3, LoadTryclops__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F214 0004C174 3C 80 80 0C */ lis r4, LoadShadowProjector__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F218 0004C178 3C 60 80 0C */ lis r3, LoadEnergyBall__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@ha /* 8004F21C 0004C17C 93 3F 0A F4 */ stw r25, 0xaf4(r31) /* 8004F220 0004C180 3B DE 7B D8 */ addi r30, r30, LoadRidley__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F224 0004C184 3B BD 74 28 */ addi r29, r29, LoadSeedling__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F228 0004C188 3B 9C 72 B8 */ addi r28, r28, LoadThermalHeatFader__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F22C 0004C18C 93 DF 0A F8 */ stw r30, 0xaf8(r31) /* 8004F230 0004C190 3B 7B 70 54 */ addi r27, r27, LoadBurrower__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F234 0004C194 3B 5A 63 CC */ addi r26, r26, LoadScriptBeam__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F238 0004C198 39 8C 66 60 */ addi r12, r12, LoadMetroidPrimeRelay__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F23C 0004C19C 93 BF 0A FC */ stw r29, 0xafc(r31) /* 8004F240 0004C1A0 39 6B 62 5C */ addi r11, r11, LoadWorldLightFader__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F244 0004C1A4 39 4A 5F F0 */ addi r10, r10, LoadMetroidPrimeEssence__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F248 0004C1A8 39 29 5E CC */ addi r9, r9, LoadMazeNode__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F24C 0004C1AC 93 9F 0B 00 */ stw r28, 0xb00(r31) /* 8004F250 0004C1B0 39 08 5C A4 */ addi r8, r8, LoadOmegaPirate__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F254 0004C1B4 38 E7 5A 4C */ addi r7, r7, LoadPhazonPool__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F258 0004C1B8 38 C6 58 58 */ addi r6, r6, LoadPhazonHealingNodule__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F25C 0004C1BC 90 1F 0B 04 */ stw r0, 0xb04(r31) /* 8004F260 0004C1C0 38 A5 37 3C */ addi r5, r5, LoadNewCameraShaker__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F264 0004C1C4 38 84 56 FC */ addi r4, r4, LoadShadowProjector__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F268 0004C1C8 38 63 52 7C */ addi r3, r3, LoadEnergyBall__12ScriptLoaderFR13CStateManagerR12CInputStreamiRC11CEntityInfo@l /* 8004F26C 0004C1CC 93 7F 0B 08 */ stw r27, 0xb08(r31) /* 8004F270 0004C1D0 93 5F 0B 10 */ stw r26, 0xb10(r31) /* 8004F274 0004C1D4 90 1F 0B 0C */ stw r0, 0xb0c(r31) /* 8004F278 0004C1D8 91 9F 0B 1C */ stw r12, 0xb1c(r31) /* 8004F27C 0004C1DC 90 1F 09 88 */ stw r0, 0x988(r31) /* 8004F280 0004C1E0 90 1F 09 98 */ stw r0, 0x998(r31) /* 8004F284 0004C1E4 91 7F 0B 14 */ stw r11, 0xb14(r31) /* 8004F288 0004C1E8 91 5F 0B 18 */ stw r10, 0xb18(r31) /* 8004F28C 0004C1EC 91 3F 0B 20 */ stw r9, 0xb20(r31) /* 8004F290 0004C1F0 91 1F 0B 24 */ stw r8, 0xb24(r31) /* 8004F294 0004C1F4 90 FF 0B 28 */ stw r7, 0xb28(r31) /* 8004F298 0004C1F8 90 DF 0B 2C */ stw r6, 0xb2c(r31) /* 8004F29C 0004C1FC 90 BF 0B 30 */ stw r5, 0xb30(r31) /* 8004F2A0 0004C200 90 9F 0B 34 */ stw r4, 0xb34(r31) /* 8004F2A4 0004C204 90 7F 0B 38 */ stw r3, 0xb38(r31) /* 8004F2A8 0004C208 48 13 60 69 */ bl InitCollision__14CGameCollisionFv /* 8004F2AC 0004C20C 80 1F 08 08 */ lwz r0, 0x808(r31) /* 8004F2B0 0004C210 1C 60 20 0C */ mulli r3, r0, 0x200c /* 8004F2B4 0004C214 38 63 01 1C */ addi r3, r3, 0x11c /* 8004F2B8 0004C218 48 2C 66 09 */ bl OffsetFakeStatics__7CMemoryFi /* 8004F2BC 0004C21C 4B FB D4 E1 */ bl ResetCommandFilters__13ControlMapperFv /* 8004F2C0 0004C220 38 7F 08 F0 */ addi r3, r31, 0x8f0 /* 8004F2C4 0004C224 48 2F 1A C1 */ bl Lock__6CTokenFv /* 8004F2C8 0004C228 7F E3 FB 78 */ mr r3, r31 /* 8004F2CC 0004C22C BB 21 00 E4 */ lmw r25, 0xe4(r1) /* 8004F2D0 0004C230 80 01 01 04 */ lwz r0, 0x104(r1) /* 8004F2D4 0004C234 7C 08 03 A6 */ mtlr r0 /* 8004F2D8 0004C238 38 21 01 00 */ addi r1, r1, 0x100 /* 8004F2DC 0004C23C 4E 80 00 20 */ blr .global sub_8004f2e0 sub_8004f2e0: /* 8004F2E0 0004C240 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F2E4 0004C244 7C 08 02 A6 */ mflr r0 /* 8004F2E8 0004C248 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F2EC 0004C24C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F2F0 0004C250 7C 7F 1B 78 */ mr r31, r3 /* 8004F2F4 0004C254 90 83 00 00 */ stw r4, 0(r3) /* 8004F2F8 0004C258 38 7F 00 04 */ addi r3, r31, 4 /* 8004F2FC 0004C25C 48 00 00 1D */ bl sub_8004f318 /* 8004F300 0004C260 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F304 0004C264 7F E3 FB 78 */ mr r3, r31 /* 8004F308 0004C268 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F30C 0004C26C 7C 08 03 A6 */ mtlr r0 /* 8004F310 0004C270 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F314 0004C274 4E 80 00 20 */ blr .global sub_8004f318 sub_8004f318: /* 8004F318 0004C278 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004F31C 0004C27C 7C 08 02 A6 */ mflr r0 /* 8004F320 0004C280 90 01 00 24 */ stw r0, 0x24(r1) /* 8004F324 0004C284 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004F328 0004C288 7C 7F 1B 78 */ mr r31, r3 /* 8004F32C 0004C28C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004F330 0004C290 3B C0 00 00 */ li r30, 0 /* 8004F334 0004C294 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004F338 0004C298 7C BD 2B 78 */ mr r29, r5 /* 8004F33C 0004C29C 93 81 00 10 */ stw r28, 0x10(r1) /* 8004F340 0004C2A0 7C 9C 23 78 */ mr r28, r4 /* 8004F344 0004C2A4 48 00 00 94 */ b lbl_8004F3D8 lbl_8004F348: /* 8004F348 0004C2A8 28 1F 00 00 */ cmplwi r31, 0 /* 8004F34C 0004C2AC 41 82 00 84 */ beq lbl_8004F3D0 /* 8004F350 0004C2B0 88 1D 00 0C */ lbz r0, 0xc(r29) /* 8004F354 0004C2B4 98 1F 00 0C */ stb r0, 0xc(r31) /* 8004F358 0004C2B8 88 1D 00 0C */ lbz r0, 0xc(r29) /* 8004F35C 0004C2BC 28 00 00 00 */ cmplwi r0, 0 /* 8004F360 0004C2C0 41 82 00 20 */ beq lbl_8004F380 /* 8004F364 0004C2C4 28 1F 00 00 */ cmplwi r31, 0 /* 8004F368 0004C2C8 41 82 00 18 */ beq lbl_8004F380 /* 8004F36C 0004C2CC 7F E3 FB 78 */ mr r3, r31 /* 8004F370 0004C2D0 7F A4 EB 78 */ mr r4, r29 /* 8004F374 0004C2D4 48 2F 1B 35 */ bl __ct__6CTokenFRC6CToken /* 8004F378 0004C2D8 80 1D 00 08 */ lwz r0, 8(r29) /* 8004F37C 0004C2DC 90 1F 00 08 */ stw r0, 8(r31) lbl_8004F380: /* 8004F380 0004C2E0 80 1D 00 10 */ lwz r0, 0x10(r29) /* 8004F384 0004C2E4 90 1F 00 10 */ stw r0, 0x10(r31) /* 8004F388 0004C2E8 80 1D 00 14 */ lwz r0, 0x14(r29) /* 8004F38C 0004C2EC 90 1F 00 14 */ stw r0, 0x14(r31) /* 8004F390 0004C2F0 C0 1D 00 18 */ lfs f0, 0x18(r29) /* 8004F394 0004C2F4 D0 1F 00 18 */ stfs f0, 0x18(r31) /* 8004F398 0004C2F8 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 8004F39C 0004C2FC D0 1F 00 1C */ stfs f0, 0x1c(r31) /* 8004F3A0 0004C300 C0 1D 00 20 */ lfs f0, 0x20(r29) /* 8004F3A4 0004C304 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 8004F3A8 0004C308 C0 1D 00 24 */ lfs f0, 0x24(r29) /* 8004F3AC 0004C30C D0 1F 00 24 */ stfs f0, 0x24(r31) /* 8004F3B0 0004C310 C0 1D 00 28 */ lfs f0, 0x28(r29) /* 8004F3B4 0004C314 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 8004F3B8 0004C318 88 1D 00 2C */ lbz r0, 0x2c(r29) /* 8004F3BC 0004C31C 98 1F 00 2C */ stb r0, 0x2c(r31) /* 8004F3C0 0004C320 88 1D 00 2D */ lbz r0, 0x2d(r29) /* 8004F3C4 0004C324 98 1F 00 2D */ stb r0, 0x2d(r31) /* 8004F3C8 0004C328 80 1D 00 30 */ lwz r0, 0x30(r29) /* 8004F3CC 0004C32C 90 1F 00 30 */ stw r0, 0x30(r31) lbl_8004F3D0: /* 8004F3D0 0004C330 3B DE 00 01 */ addi r30, r30, 1 /* 8004F3D4 0004C334 3B FF 00 34 */ addi r31, r31, 0x34 lbl_8004F3D8: /* 8004F3D8 0004C338 7C 1E E0 00 */ cmpw r30, r28 /* 8004F3DC 0004C33C 41 80 FF 6C */ blt lbl_8004F348 /* 8004F3E0 0004C340 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004F3E4 0004C344 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004F3E8 0004C348 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004F3EC 0004C34C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004F3F0 0004C350 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004F3F4 0004C354 7C 08 03 A6 */ mtlr r0 /* 8004F3F8 0004C358 38 21 00 20 */ addi r1, r1, 0x20 /* 8004F3FC 0004C35C 4E 80 00 20 */ blr .global "__cl__Q227@unnamed@CStateManager_cpp@11area_sorterCFPC9CGameAreaPC9CGameArea" "__cl__Q227@unnamed@CStateManager_cpp@11area_sorterCFPC9CGameAreaPC9CGameArea": /* 8004F400 0004C360 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004F404 0004C364 7C 08 02 A6 */ mflr r0 /* 8004F408 0004C368 90 01 00 44 */ stw r0, 0x44(r1) /* 8004F40C 0004C36C DB E1 00 30 */ stfd f31, 0x30(r1) /* 8004F410 0004C370 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8004F414 0004C374 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8004F418 0004C378 93 C1 00 28 */ stw r30, 0x28(r1) /* 8004F41C 0004C37C 7C 7E 1B 78 */ mr r30, r3 /* 8004F420 0004C380 80 04 00 04 */ lwz r0, 4(r4) /* 8004F424 0004C384 80 65 00 04 */ lwz r3, 4(r5) /* 8004F428 0004C388 7C BF 2B 78 */ mr r31, r5 /* 8004F42C 0004C38C 7C 00 18 00 */ cmpw r0, r3 /* 8004F430 0004C390 40 82 00 0C */ bne lbl_8004F43C /* 8004F434 0004C394 38 60 00 00 */ li r3, 0 /* 8004F438 0004C398 48 00 00 94 */ b lbl_8004F4CC lbl_8004F43C: /* 8004F43C 0004C39C 80 BE 00 0C */ lwz r5, 0xc(r30) /* 8004F440 0004C3A0 7C 00 28 00 */ cmpw r0, r5 /* 8004F444 0004C3A4 40 82 00 0C */ bne lbl_8004F450 /* 8004F448 0004C3A8 38 60 00 00 */ li r3, 0 /* 8004F44C 0004C3AC 48 00 00 80 */ b lbl_8004F4CC lbl_8004F450: /* 8004F450 0004C3B0 7C 03 28 00 */ cmpw r3, r5 /* 8004F454 0004C3B4 40 82 00 0C */ bne lbl_8004F460 /* 8004F458 0004C3B8 38 60 00 01 */ li r3, 1 /* 8004F45C 0004C3BC 48 00 00 70 */ b lbl_8004F4CC lbl_8004F460: /* 8004F460 0004C3C0 38 61 00 14 */ addi r3, r1, 0x14 /* 8004F464 0004C3C4 38 84 00 6C */ addi r4, r4, 0x6c /* 8004F468 0004C3C8 48 2E 81 A5 */ bl GetCenterPoint__6CAABoxCFv /* 8004F46C 0004C3CC C0 3E 00 04 */ lfs f1, 4(r30) /* 8004F470 0004C3D0 38 61 00 08 */ addi r3, r1, 8 /* 8004F474 0004C3D4 C0 01 00 18 */ lfs f0, 0x18(r1) /* 8004F478 0004C3D8 38 9F 00 6C */ addi r4, r31, 0x6c /* 8004F47C 0004C3DC C0 5E 00 00 */ lfs f2, 0(r30) /* 8004F480 0004C3E0 EC 01 00 32 */ fmuls f0, f1, f0 /* 8004F484 0004C3E4 C0 21 00 14 */ lfs f1, 0x14(r1) /* 8004F488 0004C3E8 C0 9E 00 08 */ lfs f4, 8(r30) /* 8004F48C 0004C3EC C0 61 00 1C */ lfs f3, 0x1c(r1) /* 8004F490 0004C3F0 EC 02 00 7A */ fmadds f0, f2, f1, f0 /* 8004F494 0004C3F4 EF E4 00 FA */ fmadds f31, f4, f3, f0 /* 8004F498 0004C3F8 48 2E 81 75 */ bl GetCenterPoint__6CAABoxCFv /* 8004F49C 0004C3FC C0 3E 00 04 */ lfs f1, 4(r30) /* 8004F4A0 0004C400 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8004F4A4 0004C404 C0 5E 00 00 */ lfs f2, 0(r30) /* 8004F4A8 0004C408 EC 01 00 32 */ fmuls f0, f1, f0 /* 8004F4AC 0004C40C C0 21 00 08 */ lfs f1, 8(r1) /* 8004F4B0 0004C410 C0 9E 00 08 */ lfs f4, 8(r30) /* 8004F4B4 0004C414 C0 61 00 10 */ lfs f3, 0x10(r1) /* 8004F4B8 0004C418 EC 02 00 7A */ fmadds f0, f2, f1, f0 /* 8004F4BC 0004C41C EC 04 00 FA */ fmadds f0, f4, f3, f0 /* 8004F4C0 0004C420 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8004F4C4 0004C424 7C 00 00 26 */ mfcr r0 /* 8004F4C8 0004C428 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f lbl_8004F4CC: /* 8004F4CC 0004C42C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8004F4D0 0004C430 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004F4D4 0004C434 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8004F4D8 0004C438 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8004F4DC 0004C43C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8004F4E0 0004C440 7C 08 03 A6 */ mtlr r0 /* 8004F4E4 0004C444 38 21 00 40 */ addi r1, r1, 0x40 /* 8004F4E8 0004C448 4E 80 00 20 */ blr .global sub_8004f4ec sub_8004f4ec: /* 8004F4EC 0004C44C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F4F0 0004C450 7C 08 02 A6 */ mflr r0 /* 8004F4F4 0004C454 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F4F8 0004C458 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F4FC 0004C45C 7C 9F 23 78 */ mr r31, r4 /* 8004F500 0004C460 93 C1 00 08 */ stw r30, 8(r1) /* 8004F504 0004C464 7C 7E 1B 78 */ mr r30, r3 /* 8004F508 0004C468 80 84 00 00 */ lwz r4, 0(r4) /* 8004F50C 0004C46C 28 04 00 00 */ cmplwi r4, 0 /* 8004F510 0004C470 41 82 00 08 */ beq lbl_8004F518 /* 8004F514 0004C474 4B FF FF D9 */ bl sub_8004f4ec lbl_8004F518: /* 8004F518 0004C478 80 9F 00 04 */ lwz r4, 4(r31) /* 8004F51C 0004C47C 28 04 00 00 */ cmplwi r4, 0 /* 8004F520 0004C480 41 82 00 0C */ beq lbl_8004F52C /* 8004F524 0004C484 7F C3 F3 78 */ mr r3, r30 /* 8004F528 0004C488 4B FF FF C5 */ bl sub_8004f4ec lbl_8004F52C: /* 8004F52C 0004C48C 28 1F 00 00 */ cmplwi r31, 0 /* 8004F530 0004C490 41 82 00 0C */ beq lbl_8004F53C /* 8004F534 0004C494 7F E3 FB 78 */ mr r3, r31 /* 8004F538 0004C498 48 2C 63 F9 */ bl Free__7CMemoryFPCv lbl_8004F53C: /* 8004F53C 0004C49C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F540 0004C4A0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F544 0004C4A4 83 C1 00 08 */ lwz r30, 8(r1) /* 8004F548 0004C4A8 7C 08 03 A6 */ mtlr r0 /* 8004F54C 0004C4AC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F550 0004C4B0 4E 80 00 20 */ blr .global sub_8004f554 sub_8004f554: /* 8004F554 0004C4B4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F558 0004C4B8 7C 08 02 A6 */ mflr r0 /* 8004F55C 0004C4BC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F560 0004C4C0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F564 0004C4C4 7C 9F 23 78 */ mr r31, r4 /* 8004F568 0004C4C8 93 C1 00 08 */ stw r30, 8(r1) /* 8004F56C 0004C4CC 7C 7E 1B 78 */ mr r30, r3 /* 8004F570 0004C4D0 80 84 00 00 */ lwz r4, 0(r4) /* 8004F574 0004C4D4 28 04 00 00 */ cmplwi r4, 0 /* 8004F578 0004C4D8 41 82 00 08 */ beq lbl_8004F580 /* 8004F57C 0004C4DC 4B FF FF D9 */ bl sub_8004f554 lbl_8004F580: /* 8004F580 0004C4E0 80 9F 00 04 */ lwz r4, 4(r31) /* 8004F584 0004C4E4 28 04 00 00 */ cmplwi r4, 0 /* 8004F588 0004C4E8 41 82 00 0C */ beq lbl_8004F594 /* 8004F58C 0004C4EC 7F C3 F3 78 */ mr r3, r30 /* 8004F590 0004C4F0 4B FF FF C5 */ bl sub_8004f554 lbl_8004F594: /* 8004F594 0004C4F4 28 1F 00 00 */ cmplwi r31, 0 /* 8004F598 0004C4F8 41 82 00 0C */ beq lbl_8004F5A4 /* 8004F59C 0004C4FC 7F E3 FB 78 */ mr r3, r31 /* 8004F5A0 0004C500 48 2C 63 91 */ bl Free__7CMemoryFPCv lbl_8004F5A4: /* 8004F5A4 0004C504 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F5A8 0004C508 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F5AC 0004C50C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004F5B0 0004C510 7C 08 03 A6 */ mtlr r0 /* 8004F5B4 0004C514 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F5B8 0004C518 4E 80 00 20 */ blr .global sub_8004f5bc sub_8004f5bc: /* 8004F5BC 0004C51C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F5C0 0004C520 7C 08 02 A6 */ mflr r0 /* 8004F5C4 0004C524 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F5C8 0004C528 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F5CC 0004C52C 7C 9F 23 78 */ mr r31, r4 /* 8004F5D0 0004C530 93 C1 00 08 */ stw r30, 8(r1) /* 8004F5D4 0004C534 7C 7E 1B 78 */ mr r30, r3 /* 8004F5D8 0004C538 80 84 00 00 */ lwz r4, 0(r4) /* 8004F5DC 0004C53C 28 04 00 00 */ cmplwi r4, 0 /* 8004F5E0 0004C540 41 82 00 08 */ beq lbl_8004F5E8 /* 8004F5E4 0004C544 4B FF FF D9 */ bl sub_8004f5bc lbl_8004F5E8: /* 8004F5E8 0004C548 80 9F 00 04 */ lwz r4, 4(r31) /* 8004F5EC 0004C54C 28 04 00 00 */ cmplwi r4, 0 /* 8004F5F0 0004C550 41 82 00 0C */ beq lbl_8004F5FC /* 8004F5F4 0004C554 7F C3 F3 78 */ mr r3, r30 /* 8004F5F8 0004C558 4B FF FF C5 */ bl sub_8004f5bc lbl_8004F5FC: /* 8004F5FC 0004C55C 28 1F 00 00 */ cmplwi r31, 0 /* 8004F600 0004C560 41 82 00 14 */ beq lbl_8004F614 /* 8004F604 0004C564 34 1F 00 10 */ addic. r0, r31, 0x10 /* 8004F608 0004C568 41 82 00 0C */ beq lbl_8004F614 /* 8004F60C 0004C56C 38 7F 00 10 */ addi r3, r31, 0x10 /* 8004F610 0004C570 48 2E E4 D1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8004F614: /* 8004F614 0004C574 28 1F 00 00 */ cmplwi r31, 0 /* 8004F618 0004C578 41 82 00 0C */ beq lbl_8004F624 /* 8004F61C 0004C57C 7F E3 FB 78 */ mr r3, r31 /* 8004F620 0004C580 48 2C 63 11 */ bl Free__7CMemoryFPCv lbl_8004F624: /* 8004F624 0004C584 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F628 0004C588 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F62C 0004C58C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004F630 0004C590 7C 08 03 A6 */ mtlr r0 /* 8004F634 0004C594 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F638 0004C598 4E 80 00 20 */ blr .global "__nw__36TOneStatic<22CStateManagerContainer>FUlPCcPCc" "__nw__36TOneStatic<22CStateManagerContainer>FUlPCcPCc": /* 8004F63C 0004C59C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F640 0004C5A0 7C 08 02 A6 */ mflr r0 /* 8004F644 0004C5A4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F648 0004C5A8 48 00 00 5D */ bl "ReferenceCount__36TOneStatic<22CStateManagerContainer>Fv" /* 8004F64C 0004C5AC 80 83 00 00 */ lwz r4, 0(r3) /* 8004F650 0004C5B0 38 04 00 01 */ addi r0, r4, 1 /* 8004F654 0004C5B4 90 03 00 00 */ stw r0, 0(r3) /* 8004F658 0004C5B8 48 00 00 41 */ bl "GetAllocSpace__36TOneStatic<22CStateManagerContainer>Fv" /* 8004F65C 0004C5BC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F660 0004C5C0 7C 08 03 A6 */ mtlr r0 /* 8004F664 0004C5C4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F668 0004C5C8 4E 80 00 20 */ blr .global "__dl__36TOneStatic<22CStateManagerContainer>FPv" "__dl__36TOneStatic<22CStateManagerContainer>FPv": /* 8004F66C 0004C5CC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F670 0004C5D0 7C 08 02 A6 */ mflr r0 /* 8004F674 0004C5D4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F678 0004C5D8 48 00 00 2D */ bl "ReferenceCount__36TOneStatic<22CStateManagerContainer>Fv" /* 8004F67C 0004C5DC 80 83 00 00 */ lwz r4, 0(r3) /* 8004F680 0004C5E0 38 04 FF FF */ addi r0, r4, -1 /* 8004F684 0004C5E4 90 03 00 00 */ stw r0, 0(r3) /* 8004F688 0004C5E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F68C 0004C5EC 7C 08 03 A6 */ mtlr r0 /* 8004F690 0004C5F0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F694 0004C5F4 4E 80 00 20 */ blr .global "GetAllocSpace__36TOneStatic<22CStateManagerContainer>Fv" "GetAllocSpace__36TOneStatic<22CStateManagerContainer>Fv": /* 8004F698 0004C5F8 3C 60 80 46 */ lis r3, lbl_8045C5B4@ha /* 8004F69C 0004C5FC 38 63 C5 B4 */ addi r3, r3, lbl_8045C5B4@l /* 8004F6A0 0004C600 4E 80 00 20 */ blr .global "ReferenceCount__36TOneStatic<22CStateManagerContainer>Fv" "ReferenceCount__36TOneStatic<22CStateManagerContainer>Fv": /* 8004F6A4 0004C604 88 0D A2 14 */ lbz r0, lbl_805A8DD4@sda21(r13) /* 8004F6A8 0004C608 7C 00 07 75 */ extsb. r0, r0 /* 8004F6AC 0004C60C 40 82 00 14 */ bne lbl_8004F6C0 /* 8004F6B0 0004C610 38 60 00 00 */ li r3, 0 /* 8004F6B4 0004C614 38 00 00 01 */ li r0, 1 /* 8004F6B8 0004C618 90 6D A2 10 */ stw r3, lbl_805A8DD0@sda21(r13) /* 8004F6BC 0004C61C 98 0D A2 14 */ stb r0, lbl_805A8DD4@sda21(r13) lbl_8004F6C0: /* 8004F6C0 0004C620 38 6D A2 10 */ addi r3, r13, lbl_805A8DD0@sda21 /* 8004F6C4 0004C624 4E 80 00 20 */ blr .global "__dl__27TOneStatic<13CStateManager>FPv" "__dl__27TOneStatic<13CStateManager>FPv": /* 8004F6C8 0004C628 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F6CC 0004C62C 7C 08 02 A6 */ mflr r0 /* 8004F6D0 0004C630 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F6D4 0004C634 4B FD 5A 45 */ bl "ReferenceCount__27TOneStatic<13CStateManager>Fv" /* 8004F6D8 0004C638 80 83 00 00 */ lwz r4, 0(r3) /* 8004F6DC 0004C63C 38 04 FF FF */ addi r0, r4, -1 /* 8004F6E0 0004C640 90 03 00 00 */ stw r0, 0(r3) /* 8004F6E4 0004C644 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F6E8 0004C648 7C 08 03 A6 */ mtlr r0 /* 8004F6EC 0004C64C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F6F0 0004C650 4E 80 00 20 */ blr .global "__nw__20TOneStatic<7CPlayer>FUlPCcPCc" "__nw__20TOneStatic<7CPlayer>FUlPCcPCc": /* 8004F6F4 0004C654 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F6F8 0004C658 7C 08 02 A6 */ mflr r0 /* 8004F6FC 0004C65C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F700 0004C660 4B FC B9 1D */ bl "ReferenceCount__20TOneStatic<7CPlayer>Fv" /* 8004F704 0004C664 80 83 00 00 */ lwz r4, 0(r3) /* 8004F708 0004C668 38 04 00 01 */ addi r0, r4, 1 /* 8004F70C 0004C66C 90 03 00 00 */ stw r0, 0(r3) /* 8004F710 0004C670 48 00 00 15 */ bl "GetAllocSpace__20TOneStatic<7CPlayer>Fv" /* 8004F714 0004C674 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F718 0004C678 7C 08 03 A6 */ mtlr r0 /* 8004F71C 0004C67C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F720 0004C680 4E 80 00 20 */ blr .global "GetAllocSpace__20TOneStatic<7CPlayer>Fv" "GetAllocSpace__20TOneStatic<7CPlayer>Fv": /* 8004F724 0004C684 3C 60 80 47 */ lis r3, lbl_8046B97C@ha /* 8004F728 0004C688 38 63 B9 7C */ addi r3, r3, lbl_8046B97C@l /* 8004F72C 0004C68C 4E 80 00 20 */ blr .global "Max__5CMathFRCfRCf" "Max__5CMathFRCfRCf": /* 8004F730 0004C690 C0 23 00 00 */ lfs f1, 0(r3) /* 8004F734 0004C694 C0 04 00 00 */ lfs f0, 0(r4) /* 8004F738 0004C698 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004F73C 0004C69C 4D 81 00 20 */ bgtlr /* 8004F740 0004C6A0 7C 83 23 78 */ mr r3, r4 /* 8004F744 0004C6A4 4E 80 00 20 */ blr .global "sort__4rstlFPPC9CGameAreaPPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter" "sort__4rstlFPPC9CGameAreaPPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter": /* 8004F748 0004C6A8 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8004F74C 0004C6AC 7C 08 02 A6 */ mflr r0 /* 8004F750 0004C6B0 90 01 00 64 */ stw r0, 0x64(r1) /* 8004F754 0004C6B4 BF 41 00 48 */ stmw r26, 0x48(r1) /* 8004F758 0004C6B8 7C 7D 1B 78 */ mr r29, r3 /* 8004F75C 0004C6BC 7C 9E 23 78 */ mr r30, r4 /* 8004F760 0004C6C0 7C BF 2B 78 */ mr r31, r5 /* 8004F764 0004C6C4 7C 1D F0 50 */ subf r0, r29, r30 /* 8004F768 0004C6C8 7C 00 16 70 */ srawi r0, r0, 2 /* 8004F76C 0004C6CC 7C A0 01 94 */ addze r5, r0 /* 8004F770 0004C6D0 2C 05 00 01 */ cmpwi r5, 1 /* 8004F774 0004C6D4 40 81 01 50 */ ble lbl_8004F8C4 /* 8004F778 0004C6D8 2C 05 00 14 */ cmpwi r5, 0x14 /* 8004F77C 0004C6DC 41 81 00 30 */ bgt lbl_8004F7AC /* 8004F780 0004C6E0 81 1F 00 00 */ lwz r8, 0(r31) /* 8004F784 0004C6E4 38 A1 00 38 */ addi r5, r1, 0x38 /* 8004F788 0004C6E8 80 FF 00 04 */ lwz r7, 4(r31) /* 8004F78C 0004C6EC 80 DF 00 08 */ lwz r6, 8(r31) /* 8004F790 0004C6F0 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8004F794 0004C6F4 91 01 00 38 */ stw r8, 0x38(r1) /* 8004F798 0004C6F8 90 E1 00 3C */ stw r7, 0x3c(r1) /* 8004F79C 0004C6FC 90 C1 00 40 */ stw r6, 0x40(r1) /* 8004F7A0 0004C700 90 01 00 44 */ stw r0, 0x44(r1) /* 8004F7A4 0004C704 48 00 10 51 */ bl "__insertion_sort__4rstlFPPC9CGameAreaPPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter" /* 8004F7A8 0004C708 48 00 01 1C */ b lbl_8004F8C4 lbl_8004F7AC: /* 8004F7AC 0004C70C 54 A0 0F FE */ srwi r0, r5, 0x1f /* 8004F7B0 0004C710 80 9F 00 00 */ lwz r4, 0(r31) /* 8004F7B4 0004C714 7C 00 2A 14 */ add r0, r0, r5 /* 8004F7B8 0004C718 81 1F 00 04 */ lwz r8, 4(r31) /* 8004F7BC 0004C71C 7C 05 0E 70 */ srawi r5, r0, 1 /* 8004F7C0 0004C720 80 FF 00 08 */ lwz r7, 8(r31) /* 8004F7C4 0004C724 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8004F7C8 0004C728 54 A5 10 3A */ slwi r5, r5, 2 /* 8004F7CC 0004C72C 7F 9D 2A 14 */ add r28, r29, r5 /* 8004F7D0 0004C730 3B 7E FF FC */ addi r27, r30, -4 /* 8004F7D4 0004C734 90 81 00 28 */ stw r4, 0x28(r1) /* 8004F7D8 0004C738 7F 84 E3 78 */ mr r4, r28 /* 8004F7DC 0004C73C 7F 65 DB 78 */ mr r5, r27 /* 8004F7E0 0004C740 38 C1 00 28 */ addi r6, r1, 0x28 /* 8004F7E4 0004C744 91 01 00 2C */ stw r8, 0x2c(r1) /* 8004F7E8 0004C748 90 E1 00 30 */ stw r7, 0x30(r1) /* 8004F7EC 0004C74C 90 01 00 34 */ stw r0, 0x34(r1) /* 8004F7F0 0004C750 48 00 15 D9 */ bl "__sort3__4rstlFRPC9CGameAreaRPC9CGameAreaRPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter" /* 8004F7F4 0004C754 83 9C 00 00 */ lwz r28, 0(r28) /* 8004F7F8 0004C758 3B 5D 00 04 */ addi r26, r29, 4 /* 8004F7FC 0004C75C 3B 7B FF FC */ addi r27, r27, -4 /* 8004F800 0004C760 48 00 00 08 */ b lbl_8004F808 lbl_8004F804: /* 8004F804 0004C764 3B 5A 00 04 */ addi r26, r26, 4 lbl_8004F808: /* 8004F808 0004C768 80 9A 00 00 */ lwz r4, 0(r26) /* 8004F80C 0004C76C 7F E3 FB 78 */ mr r3, r31 /* 8004F810 0004C770 7F 85 E3 78 */ mr r5, r28 /* 8004F814 0004C774 4B FF FB ED */ bl "__cl__Q227@unnamed@CStateManager_cpp@11area_sorterCFPC9CGameAreaPC9CGameArea" /* 8004F818 0004C778 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004F81C 0004C77C 40 82 FF E8 */ bne lbl_8004F804 /* 8004F820 0004C780 48 00 00 08 */ b lbl_8004F828 lbl_8004F824: /* 8004F824 0004C784 3B 7B FF FC */ addi r27, r27, -4 lbl_8004F828: /* 8004F828 0004C788 80 BB 00 00 */ lwz r5, 0(r27) /* 8004F82C 0004C78C 7F E3 FB 78 */ mr r3, r31 /* 8004F830 0004C790 7F 84 E3 78 */ mr r4, r28 /* 8004F834 0004C794 4B FF FB CD */ bl "__cl__Q227@unnamed@CStateManager_cpp@11area_sorterCFPC9CGameAreaPC9CGameArea" /* 8004F838 0004C798 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004F83C 0004C79C 40 82 FF E8 */ bne lbl_8004F824 /* 8004F840 0004C7A0 7C 1A D8 40 */ cmplw r26, r27 /* 8004F844 0004C7A4 40 80 00 20 */ bge lbl_8004F864 /* 8004F848 0004C7A8 80 7A 00 00 */ lwz r3, 0(r26) /* 8004F84C 0004C7AC 80 1B 00 00 */ lwz r0, 0(r27) /* 8004F850 0004C7B0 90 1A 00 00 */ stw r0, 0(r26) /* 8004F854 0004C7B4 3B 5A 00 04 */ addi r26, r26, 4 /* 8004F858 0004C7B8 90 7B 00 00 */ stw r3, 0(r27) /* 8004F85C 0004C7BC 3B 7B FF FC */ addi r27, r27, -4 /* 8004F860 0004C7C0 4B FF FF A8 */ b lbl_8004F808 lbl_8004F864: /* 8004F864 0004C7C4 81 1F 00 00 */ lwz r8, 0(r31) /* 8004F868 0004C7C8 7F A3 EB 78 */ mr r3, r29 /* 8004F86C 0004C7CC 80 FF 00 04 */ lwz r7, 4(r31) /* 8004F870 0004C7D0 7F 44 D3 78 */ mr r4, r26 /* 8004F874 0004C7D4 80 DF 00 08 */ lwz r6, 8(r31) /* 8004F878 0004C7D8 38 A1 00 18 */ addi r5, r1, 0x18 /* 8004F87C 0004C7DC 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8004F880 0004C7E0 91 01 00 18 */ stw r8, 0x18(r1) /* 8004F884 0004C7E4 90 E1 00 1C */ stw r7, 0x1c(r1) /* 8004F888 0004C7E8 90 C1 00 20 */ stw r6, 0x20(r1) /* 8004F88C 0004C7EC 90 01 00 24 */ stw r0, 0x24(r1) /* 8004F890 0004C7F0 4B FF FE B9 */ bl "sort__4rstlFPPC9CGameAreaPPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter" /* 8004F894 0004C7F4 81 1F 00 00 */ lwz r8, 0(r31) /* 8004F898 0004C7F8 7F 43 D3 78 */ mr r3, r26 /* 8004F89C 0004C7FC 80 FF 00 04 */ lwz r7, 4(r31) /* 8004F8A0 0004C800 7F C4 F3 78 */ mr r4, r30 /* 8004F8A4 0004C804 80 DF 00 08 */ lwz r6, 8(r31) /* 8004F8A8 0004C808 38 A1 00 08 */ addi r5, r1, 8 /* 8004F8AC 0004C80C 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8004F8B0 0004C810 91 01 00 08 */ stw r8, 8(r1) /* 8004F8B4 0004C814 90 E1 00 0C */ stw r7, 0xc(r1) /* 8004F8B8 0004C818 90 C1 00 10 */ stw r6, 0x10(r1) /* 8004F8BC 0004C81C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F8C0 0004C820 4B FF FE 89 */ bl "sort__4rstlFPPC9CGameAreaPPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter" lbl_8004F8C4: /* 8004F8C4 0004C824 BB 41 00 48 */ lmw r26, 0x48(r1) /* 8004F8C8 0004C828 80 01 00 64 */ lwz r0, 0x64(r1) /* 8004F8CC 0004C82C 7C 08 03 A6 */ mtlr r0 /* 8004F8D0 0004C830 38 21 00 60 */ addi r1, r1, 0x60 /* 8004F8D4 0004C834 4E 80 00 20 */ blr .global sub_8004f8d8 sub_8004f8d8: /* 8004F8D8 0004C838 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 8004F8DC 0004C83C 7C 08 02 A6 */ mflr r0 /* 8004F8E0 0004C840 90 01 00 B4 */ stw r0, 0xb4(r1) /* 8004F8E4 0004C844 DB E1 00 A8 */ stfd f31, 0xa8(r1) /* 8004F8E8 0004C848 93 E1 00 A4 */ stw r31, 0xa4(r1) /* 8004F8EC 0004C84C 7C BF 2B 78 */ mr r31, r5 /* 8004F8F0 0004C850 93 C1 00 A0 */ stw r30, 0xa0(r1) /* 8004F8F4 0004C854 7C 9E 23 78 */ mr r30, r4 /* 8004F8F8 0004C858 3C 80 66 66 */ lis r4, 0x66666667@ha /* 8004F8FC 0004C85C 93 A1 00 9C */ stw r29, 0x9c(r1) /* 8004F900 0004C860 7C 7D 1B 78 */ mr r29, r3 /* 8004F904 0004C864 38 84 66 67 */ addi r4, r4, 0x66666667@l /* 8004F908 0004C868 93 81 00 98 */ stw r28, 0x98(r1) /* 8004F90C 0004C86C 80 63 00 00 */ lwz r3, 0(r3) /* 8004F910 0004C870 80 DE 00 00 */ lwz r6, 0(r30) /* 8004F914 0004C874 7C 03 30 50 */ subf r0, r3, r6 /* 8004F918 0004C878 7C 04 00 96 */ mulhw r0, r4, r0 /* 8004F91C 0004C87C 7C 00 2E 70 */ srawi r0, r0, 5 /* 8004F920 0004C880 54 04 0F FE */ srwi r4, r0, 0x1f /* 8004F924 0004C884 7C 80 22 14 */ add r4, r0, r4 /* 8004F928 0004C888 2C 04 00 01 */ cmpwi r4, 1 /* 8004F92C 0004C88C 40 81 01 E0 */ ble lbl_8004FB0C /* 8004F930 0004C890 2C 04 00 14 */ cmpwi r4, 0x14 /* 8004F934 0004C894 41 81 00 30 */ bgt lbl_8004F964 /* 8004F938 0004C898 88 FF 00 00 */ lbz r7, 0(r31) /* 8004F93C 0004C89C 38 61 00 34 */ addi r3, r1, 0x34 /* 8004F940 0004C8A0 80 DE 00 00 */ lwz r6, 0(r30) /* 8004F944 0004C8A4 38 81 00 30 */ addi r4, r1, 0x30 /* 8004F948 0004C8A8 80 1D 00 00 */ lwz r0, 0(r29) /* 8004F94C 0004C8AC 38 A1 00 14 */ addi r5, r1, 0x14 /* 8004F950 0004C8B0 98 E1 00 14 */ stb r7, 0x14(r1) /* 8004F954 0004C8B4 90 C1 00 30 */ stw r6, 0x30(r1) /* 8004F958 0004C8B8 90 01 00 34 */ stw r0, 0x34(r1) /* 8004F95C 0004C8BC 48 00 15 19 */ bl "__insertion_sort,Q24rstl17rmemory_allocator>,15CLightPredicate>__4rstlFQ24rstl104pointer_iterator<6CLight,Q24rstl42vector<6CLight,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl104pointer_iterator<6CLight,Q24rstl42vector<6CLight,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>15CLightPredicate" /* 8004F960 0004C8C0 48 00 01 AC */ b lbl_8004FB0C lbl_8004F964: /* 8004F964 0004C8C4 54 80 0F FE */ srwi r0, r4, 0x1f /* 8004F968 0004C8C8 38 A6 FF B0 */ addi r5, r6, -80 /* 8004F96C 0004C8CC 7C 80 22 14 */ add r4, r0, r4 /* 8004F970 0004C8D0 88 1F 00 00 */ lbz r0, 0(r31) /* 8004F974 0004C8D4 7C 84 0E 70 */ srawi r4, r4, 1 /* 8004F978 0004C8D8 90 A1 00 3C */ stw r5, 0x3c(r1) /* 8004F97C 0004C8DC 1C 84 00 50 */ mulli r4, r4, 0x50 /* 8004F980 0004C8E0 38 C1 00 10 */ addi r6, r1, 0x10 /* 8004F984 0004C8E4 98 01 00 10 */ stb r0, 0x10(r1) /* 8004F988 0004C8E8 7F 83 22 14 */ add r28, r3, r4 /* 8004F98C 0004C8EC 7F 84 E3 78 */ mr r4, r28 /* 8004F990 0004C8F0 48 00 0E ED */ bl sub_8005087c /* 8004F994 0004C8F4 7F 84 E3 78 */ mr r4, r28 /* 8004F998 0004C8F8 38 61 00 40 */ addi r3, r1, 0x40 /* 8004F99C 0004C8FC 4B FE BB D5 */ bl __ct__6CLightFCR6CLight /* 8004F9A0 0004C900 80 9D 00 00 */ lwz r4, 0(r29) /* 8004F9A4 0004C904 80 61 00 3C */ lwz r3, 0x3c(r1) /* 8004F9A8 0004C908 38 84 00 50 */ addi r4, r4, 0x50 /* 8004F9AC 0004C90C 38 03 FF B0 */ addi r0, r3, -80 /* 8004F9B0 0004C910 90 81 00 38 */ stw r4, 0x38(r1) /* 8004F9B4 0004C914 90 01 00 3C */ stw r0, 0x3c(r1) /* 8004F9B8 0004C918 48 00 00 10 */ b lbl_8004F9C8 lbl_8004F9BC: /* 8004F9BC 0004C91C 80 61 00 38 */ lwz r3, 0x38(r1) /* 8004F9C0 0004C920 38 03 00 50 */ addi r0, r3, 0x50 /* 8004F9C4 0004C924 90 01 00 38 */ stw r0, 0x38(r1) lbl_8004F9C8: /* 8004F9C8 0004C928 83 81 00 38 */ lwz r28, 0x38(r1) /* 8004F9CC 0004C92C 80 01 00 7C */ lwz r0, 0x7c(r1) /* 8004F9D0 0004C930 80 7C 00 3C */ lwz r3, 0x3c(r28) /* 8004F9D4 0004C934 7C 03 00 00 */ cmpw r3, r0 /* 8004F9D8 0004C938 40 81 00 0C */ ble lbl_8004F9E4 /* 8004F9DC 0004C93C 38 00 00 01 */ li r0, 1 /* 8004F9E0 0004C940 48 00 00 30 */ b lbl_8004FA10 lbl_8004F9E4: /* 8004F9E4 0004C944 40 82 00 28 */ bne lbl_8004FA0C /* 8004F9E8 0004C948 38 61 00 40 */ addi r3, r1, 0x40 /* 8004F9EC 0004C94C 48 2B 67 69 */ bl GetIntensity__6CLightCFv /* 8004F9F0 0004C950 FF E0 08 90 */ fmr f31, f1 /* 8004F9F4 0004C954 7F 83 E3 78 */ mr r3, r28 /* 8004F9F8 0004C958 48 2B 67 5D */ bl GetIntensity__6CLightCFv /* 8004F9FC 0004C95C FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 8004FA00 0004C960 7C 00 00 26 */ mfcr r0 /* 8004FA04 0004C964 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f /* 8004FA08 0004C968 48 00 00 08 */ b lbl_8004FA10 lbl_8004FA0C: /* 8004FA0C 0004C96C 38 00 00 00 */ li r0, 0 lbl_8004FA10: /* 8004FA10 0004C970 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 8004FA14 0004C974 40 82 FF A8 */ bne lbl_8004F9BC /* 8004FA18 0004C978 48 00 00 10 */ b lbl_8004FA28 lbl_8004FA1C: /* 8004FA1C 0004C97C 80 61 00 3C */ lwz r3, 0x3c(r1) /* 8004FA20 0004C980 38 03 FF B0 */ addi r0, r3, -80 /* 8004FA24 0004C984 90 01 00 3C */ stw r0, 0x3c(r1) lbl_8004FA28: /* 8004FA28 0004C988 80 61 00 3C */ lwz r3, 0x3c(r1) /* 8004FA2C 0004C98C 80 81 00 7C */ lwz r4, 0x7c(r1) /* 8004FA30 0004C990 80 03 00 3C */ lwz r0, 0x3c(r3) /* 8004FA34 0004C994 7C 04 00 00 */ cmpw r4, r0 /* 8004FA38 0004C998 40 81 00 0C */ ble lbl_8004FA44 /* 8004FA3C 0004C99C 38 00 00 01 */ li r0, 1 /* 8004FA40 0004C9A0 48 00 00 2C */ b lbl_8004FA6C lbl_8004FA44: /* 8004FA44 0004C9A4 40 82 00 24 */ bne lbl_8004FA68 /* 8004FA48 0004C9A8 48 2B 67 0D */ bl GetIntensity__6CLightCFv /* 8004FA4C 0004C9AC FF E0 08 90 */ fmr f31, f1 /* 8004FA50 0004C9B0 38 61 00 40 */ addi r3, r1, 0x40 /* 8004FA54 0004C9B4 48 2B 67 01 */ bl GetIntensity__6CLightCFv /* 8004FA58 0004C9B8 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 8004FA5C 0004C9BC 7C 00 00 26 */ mfcr r0 /* 8004FA60 0004C9C0 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f /* 8004FA64 0004C9C4 48 00 00 08 */ b lbl_8004FA6C lbl_8004FA68: /* 8004FA68 0004C9C8 38 00 00 00 */ li r0, 0 lbl_8004FA6C: /* 8004FA6C 0004C9CC 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 8004FA70 0004C9D0 40 82 FF AC */ bne lbl_8004FA1C /* 8004FA74 0004C9D4 80 61 00 38 */ lwz r3, 0x38(r1) /* 8004FA78 0004C9D8 80 01 00 3C */ lwz r0, 0x3c(r1) /* 8004FA7C 0004C9DC 7C 03 00 40 */ cmplw r3, r0 /* 8004FA80 0004C9E0 40 80 00 3C */ bge lbl_8004FABC /* 8004FA84 0004C9E4 80 A1 00 3C */ lwz r5, 0x3c(r1) /* 8004FA88 0004C9E8 38 61 00 2C */ addi r3, r1, 0x2c /* 8004FA8C 0004C9EC 80 01 00 38 */ lwz r0, 0x38(r1) /* 8004FA90 0004C9F0 38 81 00 28 */ addi r4, r1, 0x28 /* 8004FA94 0004C9F4 90 A1 00 28 */ stw r5, 0x28(r1) /* 8004FA98 0004C9F8 90 01 00 2C */ stw r0, 0x2c(r1) /* 8004FA9C 0004C9FC 48 00 00 95 */ bl sub_8004fb30 /* 8004FAA0 0004CA00 80 81 00 38 */ lwz r4, 0x38(r1) /* 8004FAA4 0004CA04 80 61 00 3C */ lwz r3, 0x3c(r1) /* 8004FAA8 0004CA08 38 84 00 50 */ addi r4, r4, 0x50 /* 8004FAAC 0004CA0C 38 03 FF B0 */ addi r0, r3, -80 /* 8004FAB0 0004CA10 90 81 00 38 */ stw r4, 0x38(r1) /* 8004FAB4 0004CA14 90 01 00 3C */ stw r0, 0x3c(r1) /* 8004FAB8 0004CA18 4B FF FF 10 */ b lbl_8004F9C8 lbl_8004FABC: /* 8004FABC 0004CA1C 88 FF 00 00 */ lbz r7, 0(r31) /* 8004FAC0 0004CA20 38 61 00 24 */ addi r3, r1, 0x24 /* 8004FAC4 0004CA24 80 C1 00 38 */ lwz r6, 0x38(r1) /* 8004FAC8 0004CA28 38 81 00 20 */ addi r4, r1, 0x20 /* 8004FACC 0004CA2C 80 1D 00 00 */ lwz r0, 0(r29) /* 8004FAD0 0004CA30 38 A1 00 0C */ addi r5, r1, 0xc /* 8004FAD4 0004CA34 98 E1 00 0C */ stb r7, 0xc(r1) /* 8004FAD8 0004CA38 90 C1 00 20 */ stw r6, 0x20(r1) /* 8004FADC 0004CA3C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004FAE0 0004CA40 4B FF FD F9 */ bl sub_8004f8d8 /* 8004FAE4 0004CA44 88 FF 00 00 */ lbz r7, 0(r31) /* 8004FAE8 0004CA48 38 61 00 1C */ addi r3, r1, 0x1c /* 8004FAEC 0004CA4C 80 DE 00 00 */ lwz r6, 0(r30) /* 8004FAF0 0004CA50 38 81 00 18 */ addi r4, r1, 0x18 /* 8004FAF4 0004CA54 80 01 00 38 */ lwz r0, 0x38(r1) /* 8004FAF8 0004CA58 38 A1 00 08 */ addi r5, r1, 8 /* 8004FAFC 0004CA5C 98 E1 00 08 */ stb r7, 8(r1) /* 8004FB00 0004CA60 90 C1 00 18 */ stw r6, 0x18(r1) /* 8004FB04 0004CA64 90 01 00 1C */ stw r0, 0x1c(r1) /* 8004FB08 0004CA68 4B FF FD D1 */ bl sub_8004f8d8 lbl_8004FB0C: /* 8004FB0C 0004CA6C 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 8004FB10 0004CA70 CB E1 00 A8 */ lfd f31, 0xa8(r1) /* 8004FB14 0004CA74 83 E1 00 A4 */ lwz r31, 0xa4(r1) /* 8004FB18 0004CA78 83 C1 00 A0 */ lwz r30, 0xa0(r1) /* 8004FB1C 0004CA7C 83 A1 00 9C */ lwz r29, 0x9c(r1) /* 8004FB20 0004CA80 83 81 00 98 */ lwz r28, 0x98(r1) /* 8004FB24 0004CA84 7C 08 03 A6 */ mtlr r0 /* 8004FB28 0004CA88 38 21 00 B0 */ addi r1, r1, 0xb0 /* 8004FB2C 0004CA8C 4E 80 00 20 */ blr .global sub_8004fb30 sub_8004fb30: /* 8004FB30 0004CA90 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8004FB34 0004CA94 7C 08 02 A6 */ mflr r0 /* 8004FB38 0004CA98 90 01 00 64 */ stw r0, 0x64(r1) /* 8004FB3C 0004CA9C 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8004FB40 0004CAA0 7C 9F 23 78 */ mr r31, r4 /* 8004FB44 0004CAA4 93 C1 00 58 */ stw r30, 0x58(r1) /* 8004FB48 0004CAA8 7C 7E 1B 78 */ mr r30, r3 /* 8004FB4C 0004CAAC 80 83 00 00 */ lwz r4, 0(r3) /* 8004FB50 0004CAB0 38 61 00 08 */ addi r3, r1, 8 /* 8004FB54 0004CAB4 4B FE BA 1D */ bl __ct__6CLightFCR6CLight /* 8004FB58 0004CAB8 80 9F 00 00 */ lwz r4, 0(r31) /* 8004FB5C 0004CABC 80 BE 00 00 */ lwz r5, 0(r30) /* 8004FB60 0004CAC0 80 64 00 00 */ lwz r3, 0(r4) /* 8004FB64 0004CAC4 80 04 00 04 */ lwz r0, 4(r4) /* 8004FB68 0004CAC8 90 65 00 00 */ stw r3, 0(r5) /* 8004FB6C 0004CACC 90 05 00 04 */ stw r0, 4(r5) /* 8004FB70 0004CAD0 80 04 00 08 */ lwz r0, 8(r4) /* 8004FB74 0004CAD4 90 05 00 08 */ stw r0, 8(r5) /* 8004FB78 0004CAD8 80 64 00 0C */ lwz r3, 0xc(r4) /* 8004FB7C 0004CADC 80 04 00 10 */ lwz r0, 0x10(r4) /* 8004FB80 0004CAE0 90 65 00 0C */ stw r3, 0xc(r5) /* 8004FB84 0004CAE4 90 05 00 10 */ stw r0, 0x10(r5) /* 8004FB88 0004CAE8 80 04 00 14 */ lwz r0, 0x14(r4) /* 8004FB8C 0004CAEC 90 05 00 14 */ stw r0, 0x14(r5) /* 8004FB90 0004CAF0 80 04 00 18 */ lwz r0, 0x18(r4) /* 8004FB94 0004CAF4 90 05 00 18 */ stw r0, 0x18(r5) /* 8004FB98 0004CAF8 80 04 00 1C */ lwz r0, 0x1c(r4) /* 8004FB9C 0004CAFC 90 05 00 1C */ stw r0, 0x1c(r5) /* 8004FBA0 0004CB00 C0 04 00 20 */ lfs f0, 0x20(r4) /* 8004FBA4 0004CB04 D0 05 00 20 */ stfs f0, 0x20(r5) /* 8004FBA8 0004CB08 C0 04 00 24 */ lfs f0, 0x24(r4) /* 8004FBAC 0004CB0C D0 05 00 24 */ stfs f0, 0x24(r5) /* 8004FBB0 0004CB10 C0 04 00 28 */ lfs f0, 0x28(r4) /* 8004FBB4 0004CB14 D0 05 00 28 */ stfs f0, 0x28(r5) /* 8004FBB8 0004CB18 C0 04 00 2C */ lfs f0, 0x2c(r4) /* 8004FBBC 0004CB1C D0 05 00 2C */ stfs f0, 0x2c(r5) /* 8004FBC0 0004CB20 C0 04 00 30 */ lfs f0, 0x30(r4) /* 8004FBC4 0004CB24 D0 05 00 30 */ stfs f0, 0x30(r5) /* 8004FBC8 0004CB28 C0 04 00 34 */ lfs f0, 0x34(r4) /* 8004FBCC 0004CB2C D0 05 00 34 */ stfs f0, 0x34(r5) /* 8004FBD0 0004CB30 C0 04 00 38 */ lfs f0, 0x38(r4) /* 8004FBD4 0004CB34 D0 05 00 38 */ stfs f0, 0x38(r5) /* 8004FBD8 0004CB38 80 04 00 3C */ lwz r0, 0x3c(r4) /* 8004FBDC 0004CB3C 90 05 00 3C */ stw r0, 0x3c(r5) /* 8004FBE0 0004CB40 80 04 00 40 */ lwz r0, 0x40(r4) /* 8004FBE4 0004CB44 90 05 00 40 */ stw r0, 0x40(r5) /* 8004FBE8 0004CB48 C0 04 00 44 */ lfs f0, 0x44(r4) /* 8004FBEC 0004CB4C D0 05 00 44 */ stfs f0, 0x44(r5) /* 8004FBF0 0004CB50 C0 04 00 48 */ lfs f0, 0x48(r4) /* 8004FBF4 0004CB54 D0 05 00 48 */ stfs f0, 0x48(r5) /* 8004FBF8 0004CB58 88 04 00 4C */ lbz r0, 0x4c(r4) /* 8004FBFC 0004CB5C 98 05 00 4C */ stb r0, 0x4c(r5) /* 8004FC00 0004CB60 80 9F 00 00 */ lwz r4, 0(r31) /* 8004FC04 0004CB64 80 61 00 08 */ lwz r3, 8(r1) /* 8004FC08 0004CB68 80 01 00 0C */ lwz r0, 0xc(r1) /* 8004FC0C 0004CB6C 90 64 00 00 */ stw r3, 0(r4) /* 8004FC10 0004CB70 90 04 00 04 */ stw r0, 4(r4) /* 8004FC14 0004CB74 80 01 00 10 */ lwz r0, 0x10(r1) /* 8004FC18 0004CB78 90 04 00 08 */ stw r0, 8(r4) /* 8004FC1C 0004CB7C 80 61 00 14 */ lwz r3, 0x14(r1) /* 8004FC20 0004CB80 80 01 00 18 */ lwz r0, 0x18(r1) /* 8004FC24 0004CB84 90 64 00 0C */ stw r3, 0xc(r4) /* 8004FC28 0004CB88 90 04 00 10 */ stw r0, 0x10(r4) /* 8004FC2C 0004CB8C 80 01 00 1C */ lwz r0, 0x1c(r1) /* 8004FC30 0004CB90 90 04 00 14 */ stw r0, 0x14(r4) /* 8004FC34 0004CB94 80 01 00 20 */ lwz r0, 0x20(r1) /* 8004FC38 0004CB98 90 04 00 18 */ stw r0, 0x18(r4) /* 8004FC3C 0004CB9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004FC40 0004CBA0 90 04 00 1C */ stw r0, 0x1c(r4) /* 8004FC44 0004CBA4 C0 01 00 28 */ lfs f0, 0x28(r1) /* 8004FC48 0004CBA8 D0 04 00 20 */ stfs f0, 0x20(r4) /* 8004FC4C 0004CBAC C0 01 00 2C */ lfs f0, 0x2c(r1) /* 8004FC50 0004CBB0 D0 04 00 24 */ stfs f0, 0x24(r4) /* 8004FC54 0004CBB4 C0 01 00 30 */ lfs f0, 0x30(r1) /* 8004FC58 0004CBB8 D0 04 00 28 */ stfs f0, 0x28(r4) /* 8004FC5C 0004CBBC C0 01 00 34 */ lfs f0, 0x34(r1) /* 8004FC60 0004CBC0 D0 04 00 2C */ stfs f0, 0x2c(r4) /* 8004FC64 0004CBC4 C0 01 00 38 */ lfs f0, 0x38(r1) /* 8004FC68 0004CBC8 D0 04 00 30 */ stfs f0, 0x30(r4) /* 8004FC6C 0004CBCC C0 01 00 3C */ lfs f0, 0x3c(r1) /* 8004FC70 0004CBD0 D0 04 00 34 */ stfs f0, 0x34(r4) /* 8004FC74 0004CBD4 C0 01 00 40 */ lfs f0, 0x40(r1) /* 8004FC78 0004CBD8 D0 04 00 38 */ stfs f0, 0x38(r4) /* 8004FC7C 0004CBDC 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004FC80 0004CBE0 90 04 00 3C */ stw r0, 0x3c(r4) /* 8004FC84 0004CBE4 80 01 00 48 */ lwz r0, 0x48(r1) /* 8004FC88 0004CBE8 90 04 00 40 */ stw r0, 0x40(r4) /* 8004FC8C 0004CBEC C0 01 00 4C */ lfs f0, 0x4c(r1) /* 8004FC90 0004CBF0 D0 04 00 44 */ stfs f0, 0x44(r4) /* 8004FC94 0004CBF4 C0 01 00 50 */ lfs f0, 0x50(r1) /* 8004FC98 0004CBF8 D0 04 00 48 */ stfs f0, 0x48(r4) /* 8004FC9C 0004CBFC 88 01 00 54 */ lbz r0, 0x54(r1) /* 8004FCA0 0004CC00 98 04 00 4C */ stb r0, 0x4c(r4) /* 8004FCA4 0004CC04 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8004FCA8 0004CC08 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8004FCAC 0004CC0C 80 01 00 64 */ lwz r0, 0x64(r1) /* 8004FCB0 0004CC10 7C 08 03 A6 */ mtlr r0 /* 8004FCB4 0004CC14 38 21 00 60 */ addi r1, r1, 0x60 /* 8004FCB8 0004CC18 4E 80 00 20 */ blr .global "insert_into__Q24rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>FPQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>4nodeRCQ24rstl32pair<13TGameScriptId,9TUniqueId>" "insert_into__Q24rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>FPQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>4nodeRCQ24rstl32pair<13TGameScriptId,9TUniqueId>": /* 8004FCBC 0004CC1C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004FCC0 0004CC20 7C 08 02 A6 */ mflr r0 /* 8004FCC4 0004CC24 28 05 00 00 */ cmplwi r5, 0 /* 8004FCC8 0004CC28 90 01 00 24 */ stw r0, 0x24(r1) /* 8004FCCC 0004CC2C BF 61 00 0C */ stmw r27, 0xc(r1) /* 8004FCD0 0004CC30 7C 7C 1B 78 */ mr r28, r3 /* 8004FCD4 0004CC34 7C 9D 23 78 */ mr r29, r4 /* 8004FCD8 0004CC38 7C DE 33 78 */ mr r30, r6 /* 8004FCDC 0004CC3C 40 82 00 88 */ bne lbl_8004FD64 /* 8004FCE0 0004CC40 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004FCE4 0004CC44 38 60 00 18 */ li r3, 0x18 /* 8004FCE8 0004CC48 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004FCEC 0004CC4C 38 A0 00 00 */ li r5, 0 /* 8004FCF0 0004CC50 48 2C 5B 29 */ bl __nwa__FUlPCcPCc /* 8004FCF4 0004CC54 28 03 00 00 */ cmplwi r3, 0 /* 8004FCF8 0004CC58 41 82 00 30 */ beq lbl_8004FD28 /* 8004FCFC 0004CC5C 38 00 00 00 */ li r0, 0 /* 8004FD00 0004CC60 34 83 00 10 */ addic. r4, r3, 0x10 /* 8004FD04 0004CC64 90 03 00 00 */ stw r0, 0(r3) /* 8004FD08 0004CC68 90 03 00 04 */ stw r0, 4(r3) /* 8004FD0C 0004CC6C 90 03 00 08 */ stw r0, 8(r3) /* 8004FD10 0004CC70 90 03 00 0C */ stw r0, 0xc(r3) /* 8004FD14 0004CC74 41 82 00 14 */ beq lbl_8004FD28 /* 8004FD18 0004CC78 80 1E 00 00 */ lwz r0, 0(r30) /* 8004FD1C 0004CC7C 90 04 00 00 */ stw r0, 0(r4) /* 8004FD20 0004CC80 A0 1E 00 04 */ lhz r0, 4(r30) /* 8004FD24 0004CC84 B0 04 00 04 */ sth r0, 4(r4) lbl_8004FD28: /* 8004FD28 0004CC88 90 7D 00 10 */ stw r3, 0x10(r29) /* 8004FD2C 0004CC8C 38 1D 00 08 */ addi r0, r29, 8 /* 8004FD30 0004CC90 80 7D 00 04 */ lwz r3, 4(r29) /* 8004FD34 0004CC94 38 63 00 01 */ addi r3, r3, 1 /* 8004FD38 0004CC98 90 7D 00 04 */ stw r3, 4(r29) /* 8004FD3C 0004CC9C 80 7D 00 10 */ lwz r3, 0x10(r29) /* 8004FD40 0004CCA0 90 7D 00 08 */ stw r3, 8(r29) /* 8004FD44 0004CCA4 80 7D 00 10 */ lwz r3, 0x10(r29) /* 8004FD48 0004CCA8 90 7D 00 0C */ stw r3, 0xc(r29) /* 8004FD4C 0004CCAC 80 7D 00 10 */ lwz r3, 0x10(r29) /* 8004FD50 0004CCB0 90 7C 00 00 */ stw r3, 0(r28) /* 8004FD54 0004CCB4 90 1C 00 04 */ stw r0, 4(r28) /* 8004FD58 0004CCB8 88 0D 82 9F */ lbz r0, lbl_805A6E5F@sda21(r13) /* 8004FD5C 0004CCBC 98 1C 00 08 */ stb r0, 8(r28) /* 8004FD60 0004CCC0 48 00 01 50 */ b lbl_8004FEB0 lbl_8004FD64: /* 8004FD64 0004CCC4 7C BF 2B 78 */ mr r31, r5 /* 8004FD68 0004CCC8 3B 60 00 00 */ li r27, 0 /* 8004FD6C 0004CCCC 48 00 01 10 */ b lbl_8004FE7C lbl_8004FD70: /* 8004FD70 0004CCD0 80 7E 00 00 */ lwz r3, 0(r30) /* 8004FD74 0004CCD4 80 1F 00 10 */ lwz r0, 0x10(r31) /* 8004FD78 0004CCD8 54 63 01 BE */ clrlwi r3, r3, 6 /* 8004FD7C 0004CCDC 54 00 01 BE */ clrlwi r0, r0, 6 /* 8004FD80 0004CCE0 7C 03 00 40 */ cmplw r3, r0 /* 8004FD84 0004CCE4 40 80 00 80 */ bge lbl_8004FE04 /* 8004FD88 0004CCE8 80 1F 00 00 */ lwz r0, 0(r31) /* 8004FD8C 0004CCEC 28 00 00 00 */ cmplwi r0, 0 /* 8004FD90 0004CCF0 40 82 00 6C */ bne lbl_8004FDFC /* 8004FD94 0004CCF4 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004FD98 0004CCF8 38 60 00 18 */ li r3, 0x18 /* 8004FD9C 0004CCFC 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004FDA0 0004CD00 38 A0 00 00 */ li r5, 0 /* 8004FDA4 0004CD04 48 2C 5A 75 */ bl __nwa__FUlPCcPCc /* 8004FDA8 0004CD08 28 03 00 00 */ cmplwi r3, 0 /* 8004FDAC 0004CD0C 41 82 00 34 */ beq lbl_8004FDE0 /* 8004FDB0 0004CD10 38 80 00 00 */ li r4, 0 /* 8004FDB4 0004CD14 34 A3 00 10 */ addic. r5, r3, 0x10 /* 8004FDB8 0004CD18 90 83 00 00 */ stw r4, 0(r3) /* 8004FDBC 0004CD1C 38 00 00 01 */ li r0, 1 /* 8004FDC0 0004CD20 90 83 00 04 */ stw r4, 4(r3) /* 8004FDC4 0004CD24 93 E3 00 08 */ stw r31, 8(r3) /* 8004FDC8 0004CD28 90 03 00 0C */ stw r0, 0xc(r3) /* 8004FDCC 0004CD2C 41 82 00 14 */ beq lbl_8004FDE0 /* 8004FDD0 0004CD30 80 1E 00 00 */ lwz r0, 0(r30) /* 8004FDD4 0004CD34 90 05 00 00 */ stw r0, 0(r5) /* 8004FDD8 0004CD38 A0 1E 00 04 */ lhz r0, 4(r30) /* 8004FDDC 0004CD3C B0 05 00 04 */ sth r0, 4(r5) lbl_8004FDE0: /* 8004FDE0 0004CD40 90 7F 00 00 */ stw r3, 0(r31) /* 8004FDE4 0004CD44 7C 7B 1B 78 */ mr r27, r3 /* 8004FDE8 0004CD48 80 1D 00 08 */ lwz r0, 8(r29) /* 8004FDEC 0004CD4C 7C 1F 00 40 */ cmplw r31, r0 /* 8004FDF0 0004CD50 40 82 00 8C */ bne lbl_8004FE7C /* 8004FDF4 0004CD54 90 7D 00 08 */ stw r3, 8(r29) /* 8004FDF8 0004CD58 48 00 00 84 */ b lbl_8004FE7C lbl_8004FDFC: /* 8004FDFC 0004CD5C 7C 1F 03 78 */ mr r31, r0 /* 8004FE00 0004CD60 48 00 00 7C */ b lbl_8004FE7C lbl_8004FE04: /* 8004FE04 0004CD64 80 1F 00 04 */ lwz r0, 4(r31) /* 8004FE08 0004CD68 28 00 00 00 */ cmplwi r0, 0 /* 8004FE0C 0004CD6C 40 82 00 6C */ bne lbl_8004FE78 /* 8004FE10 0004CD70 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004FE14 0004CD74 38 60 00 18 */ li r3, 0x18 /* 8004FE18 0004CD78 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004FE1C 0004CD7C 38 A0 00 00 */ li r5, 0 /* 8004FE20 0004CD80 48 2C 59 F9 */ bl __nwa__FUlPCcPCc /* 8004FE24 0004CD84 28 03 00 00 */ cmplwi r3, 0 /* 8004FE28 0004CD88 41 82 00 34 */ beq lbl_8004FE5C /* 8004FE2C 0004CD8C 38 80 00 00 */ li r4, 0 /* 8004FE30 0004CD90 34 A3 00 10 */ addic. r5, r3, 0x10 /* 8004FE34 0004CD94 90 83 00 00 */ stw r4, 0(r3) /* 8004FE38 0004CD98 38 00 00 01 */ li r0, 1 /* 8004FE3C 0004CD9C 90 83 00 04 */ stw r4, 4(r3) /* 8004FE40 0004CDA0 93 E3 00 08 */ stw r31, 8(r3) /* 8004FE44 0004CDA4 90 03 00 0C */ stw r0, 0xc(r3) /* 8004FE48 0004CDA8 41 82 00 14 */ beq lbl_8004FE5C /* 8004FE4C 0004CDAC 80 1E 00 00 */ lwz r0, 0(r30) /* 8004FE50 0004CDB0 90 05 00 00 */ stw r0, 0(r5) /* 8004FE54 0004CDB4 A0 1E 00 04 */ lhz r0, 4(r30) /* 8004FE58 0004CDB8 B0 05 00 04 */ sth r0, 4(r5) lbl_8004FE5C: /* 8004FE5C 0004CDBC 90 7F 00 04 */ stw r3, 4(r31) /* 8004FE60 0004CDC0 7C 7B 1B 78 */ mr r27, r3 /* 8004FE64 0004CDC4 80 1D 00 0C */ lwz r0, 0xc(r29) /* 8004FE68 0004CDC8 7C 1F 00 40 */ cmplw r31, r0 /* 8004FE6C 0004CDCC 40 82 00 10 */ bne lbl_8004FE7C /* 8004FE70 0004CDD0 90 7D 00 0C */ stw r3, 0xc(r29) /* 8004FE74 0004CDD4 48 00 00 08 */ b lbl_8004FE7C lbl_8004FE78: /* 8004FE78 0004CDD8 7C 1F 03 78 */ mr r31, r0 lbl_8004FE7C: /* 8004FE7C 0004CDDC 28 1B 00 00 */ cmplwi r27, 0 /* 8004FE80 0004CDE0 41 82 FE F0 */ beq lbl_8004FD70 /* 8004FE84 0004CDE4 80 BD 00 04 */ lwz r5, 4(r29) /* 8004FE88 0004CDE8 7F 64 DB 78 */ mr r4, r27 /* 8004FE8C 0004CDEC 38 7D 00 08 */ addi r3, r29, 8 /* 8004FE90 0004CDF0 38 05 00 01 */ addi r0, r5, 1 /* 8004FE94 0004CDF4 90 1D 00 04 */ stw r0, 4(r29) /* 8004FE98 0004CDF8 48 2E CC 01 */ bl rbtree_rebalance__4rstlFPvPv /* 8004FE9C 0004CDFC 93 7C 00 00 */ stw r27, 0(r28) /* 8004FEA0 0004CE00 38 1D 00 08 */ addi r0, r29, 8 /* 8004FEA4 0004CE04 90 1C 00 04 */ stw r0, 4(r28) /* 8004FEA8 0004CE08 88 0D 82 A0 */ lbz r0, lbl_805A6E60@sda21(r13) /* 8004FEAC 0004CE0C 98 1C 00 08 */ stb r0, 8(r28) lbl_8004FEB0: /* 8004FEB0 0004CE10 BB 61 00 0C */ lmw r27, 0xc(r1) /* 8004FEB4 0004CE14 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004FEB8 0004CE18 7C 08 03 A6 */ mtlr r0 /* 8004FEBC 0004CE1C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004FEC0 0004CE20 4E 80 00 20 */ blr .global "insert_into__Q24rstl197red_black_tree<9TEditorId,Q24rstl38pair<9TEditorId,19SScriptObjectStream>,0,Q24rstl58select1st>,Q24rstl16less<9TEditorId>,Q24rstl17rmemory_allocator>FPQ34rstl197red_black_tree<9TEditorId,Q24rstl38pair<9TEditorId,19SScriptObjectStream>,0,Q24rstl58select1st>,Q24rstl16less<9TEditorId>,Q24rstl17rmemory_allocator>4nodeRCQ24rstl38pair<9TEditorId,19SScriptObjectStream>" "insert_into__Q24rstl197red_black_tree<9TEditorId,Q24rstl38pair<9TEditorId,19SScriptObjectStream>,0,Q24rstl58select1st>,Q24rstl16less<9TEditorId>,Q24rstl17rmemory_allocator>FPQ34rstl197red_black_tree<9TEditorId,Q24rstl38pair<9TEditorId,19SScriptObjectStream>,0,Q24rstl58select1st>,Q24rstl16less<9TEditorId>,Q24rstl17rmemory_allocator>4nodeRCQ24rstl38pair<9TEditorId,19SScriptObjectStream>": /* 8004FEC4 0004CE24 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004FEC8 0004CE28 7C 08 02 A6 */ mflr r0 /* 8004FECC 0004CE2C 28 05 00 00 */ cmplwi r5, 0 /* 8004FED0 0004CE30 90 01 00 24 */ stw r0, 0x24(r1) /* 8004FED4 0004CE34 BF 61 00 0C */ stmw r27, 0xc(r1) /* 8004FED8 0004CE38 7C 7B 1B 78 */ mr r27, r3 /* 8004FEDC 0004CE3C 7C 9C 23 78 */ mr r28, r4 /* 8004FEE0 0004CE40 7C DD 33 78 */ mr r29, r6 /* 8004FEE4 0004CE44 40 82 00 98 */ bne lbl_8004FF7C /* 8004FEE8 0004CE48 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004FEEC 0004CE4C 38 60 00 20 */ li r3, 0x20 /* 8004FEF0 0004CE50 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004FEF4 0004CE54 38 A0 00 00 */ li r5, 0 /* 8004FEF8 0004CE58 48 2C 59 21 */ bl __nwa__FUlPCcPCc /* 8004FEFC 0004CE5C 28 03 00 00 */ cmplwi r3, 0 /* 8004FF00 0004CE60 41 82 00 40 */ beq lbl_8004FF40 /* 8004FF04 0004CE64 38 00 00 00 */ li r0, 0 /* 8004FF08 0004CE68 34 83 00 10 */ addic. r4, r3, 0x10 /* 8004FF0C 0004CE6C 90 03 00 00 */ stw r0, 0(r3) /* 8004FF10 0004CE70 90 03 00 04 */ stw r0, 4(r3) /* 8004FF14 0004CE74 90 03 00 08 */ stw r0, 8(r3) /* 8004FF18 0004CE78 90 03 00 0C */ stw r0, 0xc(r3) /* 8004FF1C 0004CE7C 41 82 00 24 */ beq lbl_8004FF40 /* 8004FF20 0004CE80 80 1D 00 00 */ lwz r0, 0(r29) /* 8004FF24 0004CE84 90 04 00 00 */ stw r0, 0(r4) /* 8004FF28 0004CE88 80 1D 00 04 */ lwz r0, 4(r29) /* 8004FF2C 0004CE8C 90 04 00 04 */ stw r0, 4(r4) /* 8004FF30 0004CE90 80 1D 00 08 */ lwz r0, 8(r29) /* 8004FF34 0004CE94 90 04 00 08 */ stw r0, 8(r4) /* 8004FF38 0004CE98 80 1D 00 0C */ lwz r0, 0xc(r29) /* 8004FF3C 0004CE9C 90 04 00 0C */ stw r0, 0xc(r4) lbl_8004FF40: /* 8004FF40 0004CEA0 90 7C 00 10 */ stw r3, 0x10(r28) /* 8004FF44 0004CEA4 38 1C 00 08 */ addi r0, r28, 8 /* 8004FF48 0004CEA8 80 7C 00 04 */ lwz r3, 4(r28) /* 8004FF4C 0004CEAC 38 63 00 01 */ addi r3, r3, 1 /* 8004FF50 0004CEB0 90 7C 00 04 */ stw r3, 4(r28) /* 8004FF54 0004CEB4 80 7C 00 10 */ lwz r3, 0x10(r28) /* 8004FF58 0004CEB8 90 7C 00 08 */ stw r3, 8(r28) /* 8004FF5C 0004CEBC 80 7C 00 10 */ lwz r3, 0x10(r28) /* 8004FF60 0004CEC0 90 7C 00 0C */ stw r3, 0xc(r28) /* 8004FF64 0004CEC4 80 7C 00 10 */ lwz r3, 0x10(r28) /* 8004FF68 0004CEC8 90 7B 00 00 */ stw r3, 0(r27) /* 8004FF6C 0004CECC 90 1B 00 04 */ stw r0, 4(r27) /* 8004FF70 0004CED0 88 0D 82 9C */ lbz r0, lbl_805A6E5C@sda21(r13) /* 8004FF74 0004CED4 98 1B 00 08 */ stb r0, 8(r27) /* 8004FF78 0004CED8 48 00 01 A4 */ b lbl_8005011C lbl_8004FF7C: /* 8004FF7C 0004CEDC 7C BF 2B 78 */ mr r31, r5 /* 8004FF80 0004CEE0 3B C0 00 00 */ li r30, 0 /* 8004FF84 0004CEE4 48 00 01 64 */ b lbl_800500E8 lbl_8004FF88: /* 8004FF88 0004CEE8 80 7D 00 00 */ lwz r3, 0(r29) /* 8004FF8C 0004CEEC 80 1F 00 10 */ lwz r0, 0x10(r31) /* 8004FF90 0004CEF0 54 63 01 BE */ clrlwi r3, r3, 6 /* 8004FF94 0004CEF4 54 04 01 BE */ clrlwi r4, r0, 6 /* 8004FF98 0004CEF8 7C 80 1A 78 */ xor r0, r4, r3 /* 8004FF9C 0004CEFC 7C 00 00 34 */ cntlzw r0, r0 /* 8004FFA0 0004CF00 7C 80 00 30 */ slw r0, r4, r0 /* 8004FFA4 0004CF04 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f /* 8004FFA8 0004CF08 40 82 00 24 */ bne lbl_8004FFCC /* 8004FFAC 0004CF0C 7C 04 18 40 */ cmplw r4, r3 /* 8004FFB0 0004CF10 41 80 00 1C */ blt lbl_8004FFCC /* 8004FFB4 0004CF14 93 FB 00 00 */ stw r31, 0(r27) /* 8004FFB8 0004CF18 38 1C 00 08 */ addi r0, r28, 8 /* 8004FFBC 0004CF1C 90 1B 00 04 */ stw r0, 4(r27) /* 8004FFC0 0004CF20 88 0D 82 9D */ lbz r0, lbl_805A6E5D@sda21(r13) /* 8004FFC4 0004CF24 98 1B 00 08 */ stb r0, 8(r27) /* 8004FFC8 0004CF28 48 00 01 54 */ b lbl_8005011C lbl_8004FFCC: /* 8004FFCC 0004CF2C 28 00 00 00 */ cmplwi r0, 0 /* 8004FFD0 0004CF30 41 82 00 90 */ beq lbl_80050060 /* 8004FFD4 0004CF34 80 1F 00 00 */ lwz r0, 0(r31) /* 8004FFD8 0004CF38 28 00 00 00 */ cmplwi r0, 0 /* 8004FFDC 0004CF3C 40 82 00 7C */ bne lbl_80050058 /* 8004FFE0 0004CF40 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 8004FFE4 0004CF44 38 60 00 20 */ li r3, 0x20 /* 8004FFE8 0004CF48 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 8004FFEC 0004CF4C 38 A0 00 00 */ li r5, 0 /* 8004FFF0 0004CF50 48 2C 58 29 */ bl __nwa__FUlPCcPCc /* 8004FFF4 0004CF54 28 03 00 00 */ cmplwi r3, 0 /* 8004FFF8 0004CF58 41 82 00 44 */ beq lbl_8005003C /* 8004FFFC 0004CF5C 38 80 00 00 */ li r4, 0 /* 80050000 0004CF60 34 A3 00 10 */ addic. r5, r3, 0x10 /* 80050004 0004CF64 90 83 00 00 */ stw r4, 0(r3) /* 80050008 0004CF68 38 00 00 01 */ li r0, 1 /* 8005000C 0004CF6C 90 83 00 04 */ stw r4, 4(r3) /* 80050010 0004CF70 93 E3 00 08 */ stw r31, 8(r3) /* 80050014 0004CF74 90 03 00 0C */ stw r0, 0xc(r3) /* 80050018 0004CF78 41 82 00 24 */ beq lbl_8005003C /* 8005001C 0004CF7C 80 1D 00 00 */ lwz r0, 0(r29) /* 80050020 0004CF80 90 05 00 00 */ stw r0, 0(r5) /* 80050024 0004CF84 80 1D 00 04 */ lwz r0, 4(r29) /* 80050028 0004CF88 90 05 00 04 */ stw r0, 4(r5) /* 8005002C 0004CF8C 80 1D 00 08 */ lwz r0, 8(r29) /* 80050030 0004CF90 90 05 00 08 */ stw r0, 8(r5) /* 80050034 0004CF94 80 1D 00 0C */ lwz r0, 0xc(r29) /* 80050038 0004CF98 90 05 00 0C */ stw r0, 0xc(r5) lbl_8005003C: /* 8005003C 0004CF9C 90 7F 00 00 */ stw r3, 0(r31) /* 80050040 0004CFA0 7C 7E 1B 78 */ mr r30, r3 /* 80050044 0004CFA4 80 1C 00 08 */ lwz r0, 8(r28) /* 80050048 0004CFA8 7C 1F 00 40 */ cmplw r31, r0 /* 8005004C 0004CFAC 40 82 00 9C */ bne lbl_800500E8 /* 80050050 0004CFB0 90 7C 00 08 */ stw r3, 8(r28) /* 80050054 0004CFB4 48 00 00 94 */ b lbl_800500E8 lbl_80050058: /* 80050058 0004CFB8 7C 1F 03 78 */ mr r31, r0 /* 8005005C 0004CFBC 48 00 00 8C */ b lbl_800500E8 lbl_80050060: /* 80050060 0004CFC0 80 1F 00 04 */ lwz r0, 4(r31) /* 80050064 0004CFC4 28 00 00 00 */ cmplwi r0, 0 /* 80050068 0004CFC8 40 82 00 7C */ bne lbl_800500E4 /* 8005006C 0004CFCC 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 80050070 0004CFD0 38 60 00 20 */ li r3, 0x20 /* 80050074 0004CFD4 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 80050078 0004CFD8 38 A0 00 00 */ li r5, 0 /* 8005007C 0004CFDC 48 2C 57 9D */ bl __nwa__FUlPCcPCc /* 80050080 0004CFE0 28 03 00 00 */ cmplwi r3, 0 /* 80050084 0004CFE4 41 82 00 44 */ beq lbl_800500C8 /* 80050088 0004CFE8 38 80 00 00 */ li r4, 0 /* 8005008C 0004CFEC 34 A3 00 10 */ addic. r5, r3, 0x10 /* 80050090 0004CFF0 90 83 00 00 */ stw r4, 0(r3) /* 80050094 0004CFF4 38 00 00 01 */ li r0, 1 /* 80050098 0004CFF8 90 83 00 04 */ stw r4, 4(r3) /* 8005009C 0004CFFC 93 E3 00 08 */ stw r31, 8(r3) /* 800500A0 0004D000 90 03 00 0C */ stw r0, 0xc(r3) /* 800500A4 0004D004 41 82 00 24 */ beq lbl_800500C8 /* 800500A8 0004D008 80 1D 00 00 */ lwz r0, 0(r29) /* 800500AC 0004D00C 90 05 00 00 */ stw r0, 0(r5) /* 800500B0 0004D010 80 1D 00 04 */ lwz r0, 4(r29) /* 800500B4 0004D014 90 05 00 04 */ stw r0, 4(r5) /* 800500B8 0004D018 80 1D 00 08 */ lwz r0, 8(r29) /* 800500BC 0004D01C 90 05 00 08 */ stw r0, 8(r5) /* 800500C0 0004D020 80 1D 00 0C */ lwz r0, 0xc(r29) /* 800500C4 0004D024 90 05 00 0C */ stw r0, 0xc(r5) lbl_800500C8: /* 800500C8 0004D028 90 7F 00 04 */ stw r3, 4(r31) /* 800500CC 0004D02C 7C 7E 1B 78 */ mr r30, r3 /* 800500D0 0004D030 80 1C 00 0C */ lwz r0, 0xc(r28) /* 800500D4 0004D034 7C 1F 00 40 */ cmplw r31, r0 /* 800500D8 0004D038 40 82 00 10 */ bne lbl_800500E8 /* 800500DC 0004D03C 90 7C 00 0C */ stw r3, 0xc(r28) /* 800500E0 0004D040 48 00 00 08 */ b lbl_800500E8 lbl_800500E4: /* 800500E4 0004D044 7C 1F 03 78 */ mr r31, r0 lbl_800500E8: /* 800500E8 0004D048 28 1E 00 00 */ cmplwi r30, 0 /* 800500EC 0004D04C 41 82 FE 9C */ beq lbl_8004FF88 /* 800500F0 0004D050 80 BC 00 04 */ lwz r5, 4(r28) /* 800500F4 0004D054 7F C4 F3 78 */ mr r4, r30 /* 800500F8 0004D058 38 7C 00 08 */ addi r3, r28, 8 /* 800500FC 0004D05C 38 05 00 01 */ addi r0, r5, 1 /* 80050100 0004D060 90 1C 00 04 */ stw r0, 4(r28) /* 80050104 0004D064 48 2E C9 95 */ bl rbtree_rebalance__4rstlFPvPv /* 80050108 0004D068 93 DB 00 00 */ stw r30, 0(r27) /* 8005010C 0004D06C 38 1C 00 08 */ addi r0, r28, 8 /* 80050110 0004D070 90 1B 00 04 */ stw r0, 4(r27) /* 80050114 0004D074 88 0D 82 9E */ lbz r0, lbl_805A6E5E@sda21(r13) /* 80050118 0004D078 98 1B 00 08 */ stb r0, 8(r27) lbl_8005011C: /* 8005011C 0004D07C BB 61 00 0C */ lmw r27, 0xc(r1) /* 80050120 0004D080 80 01 00 24 */ lwz r0, 0x24(r1) /* 80050124 0004D084 7C 08 03 A6 */ mtlr r0 /* 80050128 0004D088 38 21 00 20 */ addi r1, r1, 0x20 /* 8005012C 0004D08C 4E 80 00 20 */ blr .global __dt__10CWeaponMgrFv __dt__10CWeaponMgrFv: /* 80050130 0004D090 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80050134 0004D094 7C 08 02 A6 */ mflr r0 /* 80050138 0004D098 90 01 00 14 */ stw r0, 0x14(r1) /* 8005013C 0004D09C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80050140 0004D0A0 7C 9F 23 78 */ mr r31, r4 /* 80050144 0004D0A4 93 C1 00 08 */ stw r30, 8(r1) /* 80050148 0004D0A8 7C 7E 1B 78 */ mr r30, r3 /* 8005014C 0004D0AC 80 84 00 00 */ lwz r4, 0(r4) /* 80050150 0004D0B0 28 04 00 00 */ cmplwi r4, 0 /* 80050154 0004D0B4 41 82 00 08 */ beq lbl_8005015C /* 80050158 0004D0B8 4B FF FF D9 */ bl __dt__10CWeaponMgrFv lbl_8005015C: /* 8005015C 0004D0BC 80 9F 00 04 */ lwz r4, 4(r31) /* 80050160 0004D0C0 28 04 00 00 */ cmplwi r4, 0 /* 80050164 0004D0C4 41 82 00 0C */ beq lbl_80050170 /* 80050168 0004D0C8 7F C3 F3 78 */ mr r3, r30 /* 8005016C 0004D0CC 4B FF FF C5 */ bl __dt__10CWeaponMgrFv lbl_80050170: /* 80050170 0004D0D0 28 1F 00 00 */ cmplwi r31, 0 /* 80050174 0004D0D4 41 82 00 68 */ beq lbl_800501DC /* 80050178 0004D0D8 34 1F 00 10 */ addic. r0, r31, 0x10 /* 8005017C 0004D0DC 41 82 00 60 */ beq lbl_800501DC /* 80050180 0004D0E0 34 BF 00 14 */ addic. r5, r31, 0x14 /* 80050184 0004D0E4 41 82 00 58 */ beq lbl_800501DC /* 80050188 0004D0E8 80 C5 00 00 */ lwz r6, 0(r5) /* 8005018C 0004D0EC 38 60 00 00 */ li r3, 0 /* 80050190 0004D0F0 2C 06 00 00 */ cmpwi r6, 0 /* 80050194 0004D0F4 40 81 00 40 */ ble lbl_800501D4 /* 80050198 0004D0F8 2C 06 00 08 */ cmpwi r6, 8 /* 8005019C 0004D0FC 38 86 FF F8 */ addi r4, r6, -8 /* 800501A0 0004D100 40 81 00 20 */ ble lbl_800501C0 /* 800501A4 0004D104 38 04 00 07 */ addi r0, r4, 7 /* 800501A8 0004D108 54 00 E8 FE */ srwi r0, r0, 3 /* 800501AC 0004D10C 7C 09 03 A6 */ mtctr r0 /* 800501B0 0004D110 2C 04 00 00 */ cmpwi r4, 0 /* 800501B4 0004D114 40 81 00 0C */ ble lbl_800501C0 lbl_800501B8: /* 800501B8 0004D118 38 63 00 08 */ addi r3, r3, 8 /* 800501BC 0004D11C 42 00 FF FC */ bdnz lbl_800501B8 lbl_800501C0: /* 800501C0 0004D120 7C 03 30 50 */ subf r0, r3, r6 /* 800501C4 0004D124 7C 09 03 A6 */ mtctr r0 /* 800501C8 0004D128 7C 03 30 00 */ cmpw r3, r6 /* 800501CC 0004D12C 40 80 00 08 */ bge lbl_800501D4 lbl_800501D0: /* 800501D0 0004D130 42 00 00 00 */ bdnz lbl_800501D0 lbl_800501D4: /* 800501D4 0004D134 38 00 00 00 */ li r0, 0 /* 800501D8 0004D138 90 05 00 00 */ stw r0, 0(r5) lbl_800501DC: /* 800501DC 0004D13C 28 1F 00 00 */ cmplwi r31, 0 /* 800501E0 0004D140 41 82 00 0C */ beq lbl_800501EC /* 800501E4 0004D144 7F E3 FB 78 */ mr r3, r31 /* 800501E8 0004D148 48 2C 57 49 */ bl Free__7CMemoryFPCv lbl_800501EC: /* 800501EC 0004D14C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800501F0 0004D150 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800501F4 0004D154 83 C1 00 08 */ lwz r30, 8(r1) /* 800501F8 0004D158 7C 08 03 A6 */ mtlr r0 /* 800501FC 0004D15C 38 21 00 10 */ addi r1, r1, 0x10 /* 80050200 0004D160 4E 80 00 20 */ blr .global sub_80050204 sub_80050204: /* 80050204 0004D164 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80050208 0004D168 7C 08 02 A6 */ mflr r0 /* 8005020C 0004D16C 90 01 00 34 */ stw r0, 0x34(r1) /* 80050210 0004D170 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80050214 0004D174 7C 9F 23 78 */ mr r31, r4 /* 80050218 0004D178 93 C1 00 28 */ stw r30, 0x28(r1) /* 8005021C 0004D17C 7C 7E 1B 78 */ mr r30, r3 /* 80050220 0004D180 93 A1 00 24 */ stw r29, 0x24(r1) /* 80050224 0004D184 80 03 00 08 */ lwz r0, 8(r3) /* 80050228 0004D188 7C 1F 00 00 */ cmpw r31, r0 /* 8005022C 0004D18C 40 81 00 98 */ ble lbl_800502C4 /* 80050230 0004D190 1C 7F 00 50 */ mulli r3, r31, 0x50 /* 80050234 0004D194 2C 03 00 00 */ cmpwi r3, 0 /* 80050238 0004D198 40 82 00 0C */ bne lbl_80050244 /* 8005023C 0004D19C 3B A0 00 00 */ li r29, 0 /* 80050240 0004D1A0 48 00 00 18 */ b lbl_80050258 lbl_80050244: /* 80050244 0004D1A4 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 80050248 0004D1A8 38 A0 00 00 */ li r5, 0 /* 8005024C 0004D1AC 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 80050250 0004D1B0 48 2C 55 C9 */ bl __nwa__FUlPCcPCc /* 80050254 0004D1B4 7C 7D 1B 78 */ mr r29, r3 lbl_80050258: /* 80050258 0004D1B8 80 1E 00 04 */ lwz r0, 4(r30) /* 8005025C 0004D1BC 7F A5 EB 78 */ mr r5, r29 /* 80050260 0004D1C0 80 DE 00 0C */ lwz r6, 0xc(r30) /* 80050264 0004D1C4 38 61 00 14 */ addi r3, r1, 0x14 /* 80050268 0004D1C8 1C 00 00 50 */ mulli r0, r0, 0x50 /* 8005026C 0004D1CC 38 81 00 0C */ addi r4, r1, 0xc /* 80050270 0004D1D0 7C C6 02 14 */ add r6, r6, r0 /* 80050274 0004D1D4 90 C1 00 0C */ stw r6, 0xc(r1) /* 80050278 0004D1D8 80 1E 00 0C */ lwz r0, 0xc(r30) /* 8005027C 0004D1DC 90 C1 00 08 */ stw r6, 8(r1) /* 80050280 0004D1E0 90 01 00 10 */ stw r0, 0x10(r1) /* 80050284 0004D1E4 90 01 00 14 */ stw r0, 0x14(r1) /* 80050288 0004D1E8 48 00 00 59 */ bl sub_800502e0 /* 8005028C 0004D1EC 80 1E 00 04 */ lwz r0, 4(r30) /* 80050290 0004D1F0 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80050294 0004D1F4 1C 00 00 50 */ mulli r0, r0, 0x50 /* 80050298 0004D1F8 7C 64 1B 78 */ mr r4, r3 /* 8005029C 0004D1FC 7C 03 02 14 */ add r0, r3, r0 /* 800502A0 0004D200 48 00 00 08 */ b lbl_800502A8 lbl_800502A4: /* 800502A4 0004D204 38 84 00 50 */ addi r4, r4, 0x50 lbl_800502A8: /* 800502A8 0004D208 7C 04 00 40 */ cmplw r4, r0 /* 800502AC 0004D20C 40 82 FF F8 */ bne lbl_800502A4 /* 800502B0 0004D210 28 03 00 00 */ cmplwi r3, 0 /* 800502B4 0004D214 41 82 00 08 */ beq lbl_800502BC /* 800502B8 0004D218 48 2C 56 79 */ bl Free__7CMemoryFPCv lbl_800502BC: /* 800502BC 0004D21C 93 BE 00 0C */ stw r29, 0xc(r30) /* 800502C0 0004D220 93 FE 00 08 */ stw r31, 8(r30) lbl_800502C4: /* 800502C4 0004D224 80 01 00 34 */ lwz r0, 0x34(r1) /* 800502C8 0004D228 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800502CC 0004D22C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800502D0 0004D230 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800502D4 0004D234 7C 08 03 A6 */ mtlr r0 /* 800502D8 0004D238 38 21 00 30 */ addi r1, r1, 0x30 /* 800502DC 0004D23C 4E 80 00 20 */ blr .global sub_800502e0 sub_800502e0: /* 800502E0 0004D240 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800502E4 0004D244 7C 08 02 A6 */ mflr r0 /* 800502E8 0004D248 90 01 00 24 */ stw r0, 0x24(r1) /* 800502EC 0004D24C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800502F0 0004D250 93 C1 00 18 */ stw r30, 0x18(r1) /* 800502F4 0004D254 7C BE 2B 78 */ mr r30, r5 /* 800502F8 0004D258 93 A1 00 14 */ stw r29, 0x14(r1) /* 800502FC 0004D25C 7C 9D 23 78 */ mr r29, r4 /* 80050300 0004D260 83 E3 00 00 */ lwz r31, 0(r3) /* 80050304 0004D264 48 00 00 18 */ b lbl_8005031C lbl_80050308: /* 80050308 0004D268 7F C3 F3 78 */ mr r3, r30 /* 8005030C 0004D26C 7F E4 FB 78 */ mr r4, r31 /* 80050310 0004D270 4B FF 57 31 */ bl sub_80045a40 /* 80050314 0004D274 3B DE 00 50 */ addi r30, r30, 0x50 /* 80050318 0004D278 3B FF 00 50 */ addi r31, r31, 0x50 lbl_8005031C: /* 8005031C 0004D27C 80 1D 00 00 */ lwz r0, 0(r29) /* 80050320 0004D280 7C 1F 00 40 */ cmplw r31, r0 /* 80050324 0004D284 40 82 FF E4 */ bne lbl_80050308 /* 80050328 0004D288 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005032C 0004D28C 7F C3 F3 78 */ mr r3, r30 /* 80050330 0004D290 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80050334 0004D294 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80050338 0004D298 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8005033C 0004D29C 7C 08 03 A6 */ mtlr r0 /* 80050340 0004D2A0 38 21 00 20 */ addi r1, r1, 0x20 /* 80050344 0004D2A4 4E 80 00 20 */ blr .global "reserve__Q24rstl45vector<9TEditorId,Q24rstl17rmemory_allocator>Fi" "reserve__Q24rstl45vector<9TEditorId,Q24rstl17rmemory_allocator>Fi": /* 80050348 0004D2A8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005034C 0004D2AC 7C 08 02 A6 */ mflr r0 /* 80050350 0004D2B0 90 01 00 34 */ stw r0, 0x34(r1) /* 80050354 0004D2B4 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80050358 0004D2B8 7C 9F 23 78 */ mr r31, r4 /* 8005035C 0004D2BC 93 C1 00 28 */ stw r30, 0x28(r1) /* 80050360 0004D2C0 7C 7E 1B 78 */ mr r30, r3 /* 80050364 0004D2C4 93 A1 00 24 */ stw r29, 0x24(r1) /* 80050368 0004D2C8 80 03 00 08 */ lwz r0, 8(r3) /* 8005036C 0004D2CC 7C 1F 00 00 */ cmpw r31, r0 /* 80050370 0004D2D0 40 81 00 A8 */ ble lbl_80050418 /* 80050374 0004D2D4 57 E3 10 3B */ rlwinm. r3, r31, 2, 0, 0x1d /* 80050378 0004D2D8 40 82 00 0C */ bne lbl_80050384 /* 8005037C 0004D2DC 3B A0 00 00 */ li r29, 0 /* 80050380 0004D2E0 48 00 00 18 */ b lbl_80050398 lbl_80050384: /* 80050384 0004D2E4 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 80050388 0004D2E8 38 A0 00 00 */ li r5, 0 /* 8005038C 0004D2EC 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 80050390 0004D2F0 48 2C 54 89 */ bl __nwa__FUlPCcPCc /* 80050394 0004D2F4 7C 7D 1B 78 */ mr r29, r3 lbl_80050398: /* 80050398 0004D2F8 80 1E 00 04 */ lwz r0, 4(r30) /* 8005039C 0004D2FC 7F A4 EB 78 */ mr r4, r29 /* 800503A0 0004D300 80 BE 00 0C */ lwz r5, 0xc(r30) /* 800503A4 0004D304 54 00 10 3A */ slwi r0, r0, 2 /* 800503A8 0004D308 7C 65 02 14 */ add r3, r5, r0 /* 800503AC 0004D30C 90 A1 00 10 */ stw r5, 0x10(r1) /* 800503B0 0004D310 90 61 00 08 */ stw r3, 8(r1) /* 800503B4 0004D314 90 61 00 0C */ stw r3, 0xc(r1) /* 800503B8 0004D318 90 A1 00 14 */ stw r5, 0x14(r1) /* 800503BC 0004D31C 48 00 00 1C */ b lbl_800503D8 lbl_800503C0: /* 800503C0 0004D320 28 04 00 00 */ cmplwi r4, 0 /* 800503C4 0004D324 41 82 00 0C */ beq lbl_800503D0 /* 800503C8 0004D328 80 05 00 00 */ lwz r0, 0(r5) /* 800503CC 0004D32C 90 04 00 00 */ stw r0, 0(r4) lbl_800503D0: /* 800503D0 0004D330 38 84 00 04 */ addi r4, r4, 4 /* 800503D4 0004D334 38 A5 00 04 */ addi r5, r5, 4 lbl_800503D8: /* 800503D8 0004D338 7C 05 18 40 */ cmplw r5, r3 /* 800503DC 0004D33C 40 82 FF E4 */ bne lbl_800503C0 /* 800503E0 0004D340 80 1E 00 04 */ lwz r0, 4(r30) /* 800503E4 0004D344 80 7E 00 0C */ lwz r3, 0xc(r30) /* 800503E8 0004D348 54 00 10 3A */ slwi r0, r0, 2 /* 800503EC 0004D34C 7C 64 1B 78 */ mr r4, r3 /* 800503F0 0004D350 7C 03 02 14 */ add r0, r3, r0 /* 800503F4 0004D354 48 00 00 08 */ b lbl_800503FC lbl_800503F8: /* 800503F8 0004D358 38 84 00 04 */ addi r4, r4, 4 lbl_800503FC: /* 800503FC 0004D35C 7C 04 00 40 */ cmplw r4, r0 /* 80050400 0004D360 40 82 FF F8 */ bne lbl_800503F8 /* 80050404 0004D364 28 03 00 00 */ cmplwi r3, 0 /* 80050408 0004D368 41 82 00 08 */ beq lbl_80050410 /* 8005040C 0004D36C 48 2C 55 25 */ bl Free__7CMemoryFPCv lbl_80050410: /* 80050410 0004D370 93 BE 00 0C */ stw r29, 0xc(r30) /* 80050414 0004D374 93 FE 00 08 */ stw r31, 8(r30) lbl_80050418: /* 80050418 0004D378 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005041C 0004D37C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80050420 0004D380 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80050424 0004D384 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80050428 0004D388 7C 08 03 A6 */ mtlr r0 /* 8005042C 0004D38C 38 21 00 30 */ addi r1, r1, 0x30 /* 80050430 0004D390 4E 80 00 20 */ blr .global "reserve__Q24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>Fi" "reserve__Q24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>Fi": /* 80050434 0004D394 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80050438 0004D398 7C 08 02 A6 */ mflr r0 /* 8005043C 0004D39C 90 01 00 34 */ stw r0, 0x34(r1) /* 80050440 0004D3A0 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80050444 0004D3A4 7C 9F 23 78 */ mr r31, r4 /* 80050448 0004D3A8 93 C1 00 28 */ stw r30, 0x28(r1) /* 8005044C 0004D3AC 7C 7E 1B 78 */ mr r30, r3 /* 80050450 0004D3B0 93 A1 00 24 */ stw r29, 0x24(r1) /* 80050454 0004D3B4 80 03 00 08 */ lwz r0, 8(r3) /* 80050458 0004D3B8 7C 1F 00 00 */ cmpw r31, r0 /* 8005045C 0004D3BC 40 81 00 BC */ ble lbl_80050518 /* 80050460 0004D3C0 1C 7F 00 0C */ mulli r3, r31, 0xc /* 80050464 0004D3C4 2C 03 00 00 */ cmpwi r3, 0 /* 80050468 0004D3C8 40 82 00 0C */ bne lbl_80050474 /* 8005046C 0004D3CC 3B A0 00 00 */ li r29, 0 /* 80050470 0004D3D0 48 00 00 18 */ b lbl_80050488 lbl_80050474: /* 80050474 0004D3D4 3C 80 80 3D */ lis r4, lbl_803CCEE0@ha /* 80050478 0004D3D8 38 A0 00 00 */ li r5, 0 /* 8005047C 0004D3DC 38 84 CE E0 */ addi r4, r4, lbl_803CCEE0@l /* 80050480 0004D3E0 48 2C 53 99 */ bl __nwa__FUlPCcPCc /* 80050484 0004D3E4 7C 7D 1B 78 */ mr r29, r3 lbl_80050488: /* 80050488 0004D3E8 80 1E 00 04 */ lwz r0, 4(r30) /* 8005048C 0004D3EC 7F A4 EB 78 */ mr r4, r29 /* 80050490 0004D3F0 80 BE 00 0C */ lwz r5, 0xc(r30) /* 80050494 0004D3F4 1C 00 00 0C */ mulli r0, r0, 0xc /* 80050498 0004D3F8 90 A1 00 10 */ stw r5, 0x10(r1) /* 8005049C 0004D3FC 7C 65 02 14 */ add r3, r5, r0 /* 800504A0 0004D400 90 A1 00 14 */ stw r5, 0x14(r1) /* 800504A4 0004D404 90 61 00 08 */ stw r3, 8(r1) /* 800504A8 0004D408 90 61 00 0C */ stw r3, 0xc(r1) /* 800504AC 0004D40C 48 00 00 2C */ b lbl_800504D8 lbl_800504B0: /* 800504B0 0004D410 28 04 00 00 */ cmplwi r4, 0 /* 800504B4 0004D414 41 82 00 1C */ beq lbl_800504D0 /* 800504B8 0004D418 80 05 00 00 */ lwz r0, 0(r5) /* 800504BC 0004D41C 90 04 00 00 */ stw r0, 0(r4) /* 800504C0 0004D420 80 05 00 04 */ lwz r0, 4(r5) /* 800504C4 0004D424 90 04 00 04 */ stw r0, 4(r4) /* 800504C8 0004D428 80 05 00 08 */ lwz r0, 8(r5) /* 800504CC 0004D42C 90 04 00 08 */ stw r0, 8(r4) lbl_800504D0: /* 800504D0 0004D430 38 84 00 0C */ addi r4, r4, 0xc /* 800504D4 0004D434 38 A5 00 0C */ addi r5, r5, 0xc lbl_800504D8: /* 800504D8 0004D438 7C 05 18 40 */ cmplw r5, r3 /* 800504DC 0004D43C 40 82 FF D4 */ bne lbl_800504B0 /* 800504E0 0004D440 80 1E 00 04 */ lwz r0, 4(r30) /* 800504E4 0004D444 80 7E 00 0C */ lwz r3, 0xc(r30) /* 800504E8 0004D448 1C 00 00 0C */ mulli r0, r0, 0xc /* 800504EC 0004D44C 7C 64 1B 78 */ mr r4, r3 /* 800504F0 0004D450 7C 03 02 14 */ add r0, r3, r0 /* 800504F4 0004D454 48 00 00 08 */ b lbl_800504FC lbl_800504F8: /* 800504F8 0004D458 38 84 00 0C */ addi r4, r4, 0xc lbl_800504FC: /* 800504FC 0004D45C 7C 04 00 40 */ cmplw r4, r0 /* 80050500 0004D460 40 82 FF F8 */ bne lbl_800504F8 /* 80050504 0004D464 28 03 00 00 */ cmplwi r3, 0 /* 80050508 0004D468 41 82 00 08 */ beq lbl_80050510 /* 8005050C 0004D46C 48 2C 54 25 */ bl Free__7CMemoryFPCv lbl_80050510: /* 80050510 0004D470 93 BE 00 0C */ stw r29, 0xc(r30) /* 80050514 0004D474 93 FE 00 08 */ stw r31, 8(r30) lbl_80050518: /* 80050518 0004D478 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005051C 0004D47C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80050520 0004D480 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80050524 0004D484 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80050528 0004D488 7C 08 03 A6 */ mtlr r0 /* 8005052C 0004D48C 38 21 00 30 */ addi r1, r1, 0x30 /* 80050530 0004D490 4E 80 00 20 */ blr .global sub_80050534 sub_80050534: /* 80050534 0004D494 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80050538 0004D498 7C 08 02 A6 */ mflr r0 /* 8005053C 0004D49C 90 01 00 24 */ stw r0, 0x24(r1) /* 80050540 0004D4A0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80050544 0004D4A4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80050548 0004D4A8 7C 9E 23 78 */ mr r30, r4 /* 8005054C 0004D4AC 93 A1 00 14 */ stw r29, 0x14(r1) /* 80050550 0004D4B0 7C 7D 1B 79 */ or. r29, r3, r3 /* 80050554 0004D4B4 41 82 00 38 */ beq lbl_8005058C /* 80050558 0004D4B8 83 FD 00 04 */ lwz r31, 4(r29) /* 8005055C 0004D4BC 48 00 00 14 */ b lbl_80050570 lbl_80050560: /* 80050560 0004D4C0 7F E3 FB 79 */ or. r3, r31, r31 /* 80050564 0004D4C4 83 FF 00 04 */ lwz r31, 4(r31) /* 80050568 0004D4C8 41 82 00 08 */ beq lbl_80050570 /* 8005056C 0004D4CC 48 2C 53 C5 */ bl Free__7CMemoryFPCv lbl_80050570: /* 80050570 0004D4D0 80 1D 00 08 */ lwz r0, 8(r29) /* 80050574 0004D4D4 7C 1F 00 40 */ cmplw r31, r0 /* 80050578 0004D4D8 40 82 FF E8 */ bne lbl_80050560 /* 8005057C 0004D4DC 7F C0 07 35 */ extsh. r0, r30 /* 80050580 0004D4E0 40 81 00 0C */ ble lbl_8005058C /* 80050584 0004D4E4 7F A3 EB 78 */ mr r3, r29 /* 80050588 0004D4E8 48 2C 53 A9 */ bl Free__7CMemoryFPCv lbl_8005058C: /* 8005058C 0004D4EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80050590 0004D4F0 7F A3 EB 78 */ mr r3, r29 /* 80050594 0004D4F4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80050598 0004D4F8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8005059C 0004D4FC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800505A0 0004D500 7C 08 03 A6 */ mtlr r0 /* 800505A4 0004D504 38 21 00 20 */ addi r1, r1, 0x20 /* 800505A8 0004D508 4E 80 00 20 */ blr .global sub_800505ac sub_800505ac: /* 800505AC 0004D50C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800505B0 0004D510 7C 08 02 A6 */ mflr r0 /* 800505B4 0004D514 90 01 00 14 */ stw r0, 0x14(r1) /* 800505B8 0004D518 93 E1 00 0C */ stw r31, 0xc(r1) /* 800505BC 0004D51C 93 C1 00 08 */ stw r30, 8(r1) /* 800505C0 0004D520 7C 7E 1B 78 */ mr r30, r3 /* 800505C4 0004D524 80 03 00 04 */ lwz r0, 4(r3) /* 800505C8 0004D528 83 E4 00 04 */ lwz r31, 4(r4) /* 800505CC 0004D52C 7C 04 00 40 */ cmplw r4, r0 /* 800505D0 0004D530 40 82 00 08 */ bne lbl_800505D8 /* 800505D4 0004D534 93 FE 00 04 */ stw r31, 4(r30) lbl_800505D8: /* 800505D8 0004D538 80 04 00 04 */ lwz r0, 4(r4) /* 800505DC 0004D53C 34 A4 00 08 */ addic. r5, r4, 8 /* 800505E0 0004D540 80 64 00 00 */ lwz r3, 0(r4) /* 800505E4 0004D544 90 03 00 04 */ stw r0, 4(r3) /* 800505E8 0004D548 80 04 00 00 */ lwz r0, 0(r4) /* 800505EC 0004D54C 80 64 00 04 */ lwz r3, 4(r4) /* 800505F0 0004D550 90 03 00 00 */ stw r0, 0(r3) /* 800505F4 0004D554 41 82 00 58 */ beq lbl_8005064C /* 800505F8 0004D558 80 E5 00 00 */ lwz r7, 0(r5) /* 800505FC 0004D55C 38 60 00 00 */ li r3, 0 /* 80050600 0004D560 2C 07 00 00 */ cmpwi r7, 0 /* 80050604 0004D564 40 81 00 40 */ ble lbl_80050644 /* 80050608 0004D568 2C 07 00 08 */ cmpwi r7, 8 /* 8005060C 0004D56C 38 C7 FF F8 */ addi r6, r7, -8 /* 80050610 0004D570 40 81 00 20 */ ble lbl_80050630 /* 80050614 0004D574 38 06 00 07 */ addi r0, r6, 7 /* 80050618 0004D578 54 00 E8 FE */ srwi r0, r0, 3 /* 8005061C 0004D57C 7C 09 03 A6 */ mtctr r0 /* 80050620 0004D580 2C 06 00 00 */ cmpwi r6, 0 /* 80050624 0004D584 40 81 00 0C */ ble lbl_80050630 lbl_80050628: /* 80050628 0004D588 38 63 00 08 */ addi r3, r3, 8 /* 8005062C 0004D58C 42 00 FF FC */ bdnz lbl_80050628 lbl_80050630: /* 80050630 0004D590 7C 03 38 50 */ subf r0, r3, r7 /* 80050634 0004D594 7C 09 03 A6 */ mtctr r0 /* 80050638 0004D598 7C 03 38 00 */ cmpw r3, r7 /* 8005063C 0004D59C 40 80 00 08 */ bge lbl_80050644 lbl_80050640: /* 80050640 0004D5A0 42 00 00 00 */ bdnz lbl_80050640 lbl_80050644: /* 80050644 0004D5A4 38 00 00 00 */ li r0, 0 /* 80050648 0004D5A8 90 05 00 00 */ stw r0, 0(r5) lbl_8005064C: /* 8005064C 0004D5AC 28 04 00 00 */ cmplwi r4, 0 /* 80050650 0004D5B0 41 82 00 0C */ beq lbl_8005065C /* 80050654 0004D5B4 7C 83 23 78 */ mr r3, r4 /* 80050658 0004D5B8 48 2C 52 D9 */ bl Free__7CMemoryFPCv lbl_8005065C: /* 8005065C 0004D5BC 80 9E 00 14 */ lwz r4, 0x14(r30) /* 80050660 0004D5C0 7F E3 FB 78 */ mr r3, r31 /* 80050664 0004D5C4 38 04 FF FF */ addi r0, r4, -1 /* 80050668 0004D5C8 90 1E 00 14 */ stw r0, 0x14(r30) /* 8005066C 0004D5CC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80050670 0004D5D0 83 C1 00 08 */ lwz r30, 8(r1) /* 80050674 0004D5D4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80050678 0004D5D8 7C 08 03 A6 */ mtlr r0 /* 8005067C 0004D5DC 38 21 00 10 */ addi r1, r1, 0x10 /* 80050680 0004D5E0 4E 80 00 20 */ blr .global sub_80050684 sub_80050684: /* 80050684 0004D5E4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80050688 0004D5E8 7C 08 02 A6 */ mflr r0 /* 8005068C 0004D5EC 90 01 00 24 */ stw r0, 0x24(r1) /* 80050690 0004D5F0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80050694 0004D5F4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80050698 0004D5F8 7C 9E 23 78 */ mr r30, r4 /* 8005069C 0004D5FC 93 A1 00 14 */ stw r29, 0x14(r1) /* 800506A0 0004D600 7C 7D 1B 79 */ or. r29, r3, r3 /* 800506A4 0004D604 41 82 00 9C */ beq lbl_80050740 /* 800506A8 0004D608 83 FD 00 04 */ lwz r31, 4(r29) /* 800506AC 0004D60C 48 00 00 78 */ b lbl_80050724 lbl_800506B0: /* 800506B0 0004D610 7F E3 FB 78 */ mr r3, r31 /* 800506B4 0004D614 83 FF 00 04 */ lwz r31, 4(r31) /* 800506B8 0004D618 34 A3 00 08 */ addic. r5, r3, 8 /* 800506BC 0004D61C 41 82 00 5C */ beq lbl_80050718 /* 800506C0 0004D620 80 E5 00 00 */ lwz r7, 0(r5) /* 800506C4 0004D624 38 80 00 00 */ li r4, 0 /* 800506C8 0004D628 2C 07 00 00 */ cmpwi r7, 0 /* 800506CC 0004D62C 40 81 00 44 */ ble lbl_80050710 /* 800506D0 0004D630 2C 07 00 08 */ cmpwi r7, 8 /* 800506D4 0004D634 38 C7 FF F8 */ addi r6, r7, -8 /* 800506D8 0004D638 40 81 00 20 */ ble lbl_800506F8 /* 800506DC 0004D63C 38 06 00 07 */ addi r0, r6, 7 /* 800506E0 0004D640 54 00 E8 FE */ srwi r0, r0, 3 /* 800506E4 0004D644 7C 09 03 A6 */ mtctr r0 /* 800506E8 0004D648 2C 06 00 00 */ cmpwi r6, 0 /* 800506EC 0004D64C 40 81 00 0C */ ble lbl_800506F8 lbl_800506F0: /* 800506F0 0004D650 38 84 00 08 */ addi r4, r4, 8 /* 800506F4 0004D654 42 00 FF FC */ bdnz lbl_800506F0 lbl_800506F8: /* 800506F8 0004D658 7C 04 38 50 */ subf r0, r4, r7 /* 800506FC 0004D65C 7C 09 03 A6 */ mtctr r0 /* 80050700 0004D660 7C 04 38 00 */ cmpw r4, r7 /* 80050704 0004D664 40 80 00 0C */ bge lbl_80050710 lbl_80050708: /* 80050708 0004D668 38 84 00 01 */ addi r4, r4, 1 /* 8005070C 0004D66C 42 00 FF FC */ bdnz lbl_80050708 lbl_80050710: /* 80050710 0004D670 38 00 00 00 */ li r0, 0 /* 80050714 0004D674 90 05 00 00 */ stw r0, 0(r5) lbl_80050718: /* 80050718 0004D678 28 03 00 00 */ cmplwi r3, 0 /* 8005071C 0004D67C 41 82 00 08 */ beq lbl_80050724 /* 80050720 0004D680 48 2C 52 11 */ bl Free__7CMemoryFPCv lbl_80050724: /* 80050724 0004D684 80 1D 00 08 */ lwz r0, 8(r29) /* 80050728 0004D688 7C 1F 00 40 */ cmplw r31, r0 /* 8005072C 0004D68C 40 82 FF 84 */ bne lbl_800506B0 /* 80050730 0004D690 7F C0 07 35 */ extsh. r0, r30 /* 80050734 0004D694 40 81 00 0C */ ble lbl_80050740 /* 80050738 0004D698 7F A3 EB 78 */ mr r3, r29 /* 8005073C 0004D69C 48 2C 51 F5 */ bl Free__7CMemoryFPCv lbl_80050740: /* 80050740 0004D6A0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80050744 0004D6A4 7F A3 EB 78 */ mr r3, r29 /* 80050748 0004D6A8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005074C 0004D6AC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80050750 0004D6B0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80050754 0004D6B4 7C 08 03 A6 */ mtlr r0 /* 80050758 0004D6B8 38 21 00 20 */ addi r1, r1, 0x20 /* 8005075C 0004D6BC 4E 80 00 20 */ blr .global sub_80050760 sub_80050760: /* 80050760 0004D6C0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80050764 0004D6C4 7C 08 02 A6 */ mflr r0 /* 80050768 0004D6C8 90 01 00 24 */ stw r0, 0x24(r1) /* 8005076C 0004D6CC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80050770 0004D6D0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80050774 0004D6D4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80050778 0004D6D8 7C 9D 23 78 */ mr r29, r4 /* 8005077C 0004D6DC 93 81 00 10 */ stw r28, 0x10(r1) /* 80050780 0004D6E0 7C 7C 1B 79 */ or. r28, r3, r3 /* 80050784 0004D6E4 41 82 00 4C */ beq lbl_800507D0 /* 80050788 0004D6E8 83 FC 00 04 */ lwz r31, 4(r28) /* 8005078C 0004D6EC 48 00 00 28 */ b lbl_800507B4 lbl_80050790: /* 80050790 0004D6F0 7F FE FB 78 */ mr r30, r31 /* 80050794 0004D6F4 83 FF 00 04 */ lwz r31, 4(r31) /* 80050798 0004D6F8 38 7E 00 08 */ addi r3, r30, 8 /* 8005079C 0004D6FC 38 80 FF FF */ li r4, -1 /* 800507A0 0004D700 48 19 65 21 */ bl __dt__Q220CActorModelParticles5CItemFv /* 800507A4 0004D704 28 1E 00 00 */ cmplwi r30, 0 /* 800507A8 0004D708 41 82 00 0C */ beq lbl_800507B4 /* 800507AC 0004D70C 7F C3 F3 78 */ mr r3, r30 /* 800507B0 0004D710 48 2C 51 81 */ bl Free__7CMemoryFPCv lbl_800507B4: /* 800507B4 0004D714 80 1C 00 08 */ lwz r0, 8(r28) /* 800507B8 0004D718 7C 1F 00 40 */ cmplw r31, r0 /* 800507BC 0004D71C 40 82 FF D4 */ bne lbl_80050790 /* 800507C0 0004D720 7F A0 07 35 */ extsh. r0, r29 /* 800507C4 0004D724 40 81 00 0C */ ble lbl_800507D0 /* 800507C8 0004D728 7F 83 E3 78 */ mr r3, r28 /* 800507CC 0004D72C 48 2C 51 65 */ bl Free__7CMemoryFPCv lbl_800507D0: /* 800507D0 0004D730 80 01 00 24 */ lwz r0, 0x24(r1) /* 800507D4 0004D734 7F 83 E3 78 */ mr r3, r28 /* 800507D8 0004D738 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800507DC 0004D73C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800507E0 0004D740 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800507E4 0004D744 83 81 00 10 */ lwz r28, 0x10(r1) /* 800507E8 0004D748 7C 08 03 A6 */ mtlr r0 /* 800507EC 0004D74C 38 21 00 20 */ addi r1, r1, 0x20 /* 800507F0 0004D750 4E 80 00 20 */ blr .global "__insertion_sort__4rstlFPPC9CGameAreaPPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter" "__insertion_sort__4rstlFPPC9CGameAreaPPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter": /* 800507F4 0004D754 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800507F8 0004D758 7C 08 02 A6 */ mflr r0 /* 800507FC 0004D75C 90 01 00 34 */ stw r0, 0x34(r1) /* 80050800 0004D760 BF 21 00 14 */ stmw r25, 0x14(r1) /* 80050804 0004D764 7C 79 1B 78 */ mr r25, r3 /* 80050808 0004D768 7C 9A 23 78 */ mr r26, r4 /* 8005080C 0004D76C 7C BB 2B 78 */ mr r27, r5 /* 80050810 0004D770 3B F9 00 04 */ addi r31, r25, 4 /* 80050814 0004D774 48 00 00 4C */ b lbl_80050860 lbl_80050818: /* 80050818 0004D778 83 DF 00 00 */ lwz r30, 0(r31) /* 8005081C 0004D77C 7F FC FB 78 */ mr r28, r31 /* 80050820 0004D780 3B BF FF FC */ addi r29, r31, -4 /* 80050824 0004D784 48 00 00 14 */ b lbl_80050838 lbl_80050828: /* 80050828 0004D788 80 1D 00 00 */ lwz r0, 0(r29) /* 8005082C 0004D78C 3B BD FF FC */ addi r29, r29, -4 /* 80050830 0004D790 90 1C 00 00 */ stw r0, 0(r28) /* 80050834 0004D794 3B 9C FF FC */ addi r28, r28, -4 lbl_80050838: /* 80050838 0004D798 7C 19 E0 40 */ cmplw r25, r28 /* 8005083C 0004D79C 40 80 00 1C */ bge lbl_80050858 /* 80050840 0004D7A0 80 BD 00 00 */ lwz r5, 0(r29) /* 80050844 0004D7A4 7F 63 DB 78 */ mr r3, r27 /* 80050848 0004D7A8 7F C4 F3 78 */ mr r4, r30 /* 8005084C 0004D7AC 4B FF EB B5 */ bl "__cl__Q227@unnamed@CStateManager_cpp@11area_sorterCFPC9CGameAreaPC9CGameArea" /* 80050850 0004D7B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80050854 0004D7B4 40 82 FF D4 */ bne lbl_80050828 lbl_80050858: /* 80050858 0004D7B8 93 DC 00 00 */ stw r30, 0(r28) /* 8005085C 0004D7BC 3B FF 00 04 */ addi r31, r31, 4 lbl_80050860: /* 80050860 0004D7C0 7C 1F D0 40 */ cmplw r31, r26 /* 80050864 0004D7C4 41 80 FF B4 */ blt lbl_80050818 /* 80050868 0004D7C8 BB 21 00 14 */ lmw r25, 0x14(r1) /* 8005086C 0004D7CC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80050870 0004D7D0 7C 08 03 A6 */ mtlr r0 /* 80050874 0004D7D4 38 21 00 30 */ addi r1, r1, 0x30 /* 80050878 0004D7D8 4E 80 00 20 */ blr .global sub_8005087c sub_8005087c: /* 8005087C 0004D7DC 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80050880 0004D7E0 7C 08 02 A6 */ mflr r0 /* 80050884 0004D7E4 90 01 00 84 */ stw r0, 0x84(r1) /* 80050888 0004D7E8 DB E1 00 70 */ stfd f31, 0x70(r1) /* 8005088C 0004D7EC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 80050890 0004D7F0 93 E1 00 6C */ stw r31, 0x6c(r1) /* 80050894 0004D7F4 93 C1 00 68 */ stw r30, 0x68(r1) /* 80050898 0004D7F8 93 A1 00 64 */ stw r29, 0x64(r1) /* 8005089C 0004D7FC 7C 7D 1B 78 */ mr r29, r3 /* 800508A0 0004D800 7C 9E 23 78 */ mr r30, r4 /* 800508A4 0004D804 80 84 00 3C */ lwz r4, 0x3c(r4) /* 800508A8 0004D808 7C BF 2B 78 */ mr r31, r5 /* 800508AC 0004D80C 80 03 00 3C */ lwz r0, 0x3c(r3) /* 800508B0 0004D810 7C 04 00 00 */ cmpw r4, r0 /* 800508B4 0004D814 40 81 00 0C */ ble lbl_800508C0 /* 800508B8 0004D818 38 00 00 01 */ li r0, 1 /* 800508BC 0004D81C 48 00 00 2C */ b lbl_800508E8 lbl_800508C0: /* 800508C0 0004D820 40 82 00 24 */ bne lbl_800508E4 /* 800508C4 0004D824 48 2B 58 91 */ bl GetIntensity__6CLightCFv /* 800508C8 0004D828 FF E0 08 90 */ fmr f31, f1 /* 800508CC 0004D82C 7F C3 F3 78 */ mr r3, r30 /* 800508D0 0004D830 48 2B 58 85 */ bl GetIntensity__6CLightCFv /* 800508D4 0004D834 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 800508D8 0004D838 7C 00 00 26 */ mfcr r0 /* 800508DC 0004D83C 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f /* 800508E0 0004D840 48 00 00 08 */ b lbl_800508E8 lbl_800508E4: /* 800508E4 0004D844 38 00 00 00 */ li r0, 0 lbl_800508E8: /* 800508E8 0004D848 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 800508EC 0004D84C 41 82 00 10 */ beq lbl_800508FC /* 800508F0 0004D850 7F A3 EB 78 */ mr r3, r29 /* 800508F4 0004D854 7F C4 F3 78 */ mr r4, r30 /* 800508F8 0004D858 48 00 03 51 */ bl sub_80050c48 lbl_800508FC: /* 800508FC 0004D85C 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 80050900 0004D860 80 1E 00 3C */ lwz r0, 0x3c(r30) /* 80050904 0004D864 7C 03 00 00 */ cmpw r3, r0 /* 80050908 0004D868 40 81 00 0C */ ble lbl_80050914 /* 8005090C 0004D86C 38 00 00 01 */ li r0, 1 /* 80050910 0004D870 48 00 00 30 */ b lbl_80050940 lbl_80050914: /* 80050914 0004D874 40 82 00 28 */ bne lbl_8005093C /* 80050918 0004D878 7F C3 F3 78 */ mr r3, r30 /* 8005091C 0004D87C 48 2B 58 39 */ bl GetIntensity__6CLightCFv /* 80050920 0004D880 FF E0 08 90 */ fmr f31, f1 /* 80050924 0004D884 7F E3 FB 78 */ mr r3, r31 /* 80050928 0004D888 48 2B 58 2D */ bl GetIntensity__6CLightCFv /* 8005092C 0004D88C FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 80050930 0004D890 7C 00 00 26 */ mfcr r0 /* 80050934 0004D894 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f /* 80050938 0004D898 48 00 00 08 */ b lbl_80050940 lbl_8005093C: /* 8005093C 0004D89C 38 00 00 00 */ li r0, 0 lbl_80050940: /* 80050940 0004D8A0 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80050944 0004D8A4 41 82 02 E0 */ beq lbl_80050C24 /* 80050948 0004D8A8 7F E4 FB 78 */ mr r4, r31 /* 8005094C 0004D8AC 38 61 00 08 */ addi r3, r1, 8 /* 80050950 0004D8B0 4B FE AC 21 */ bl __ct__6CLightFCR6CLight /* 80050954 0004D8B4 80 7E 00 00 */ lwz r3, 0(r30) /* 80050958 0004D8B8 80 1E 00 04 */ lwz r0, 4(r30) /* 8005095C 0004D8BC 90 7F 00 00 */ stw r3, 0(r31) /* 80050960 0004D8C0 90 1F 00 04 */ stw r0, 4(r31) /* 80050964 0004D8C4 80 1E 00 08 */ lwz r0, 8(r30) /* 80050968 0004D8C8 90 1F 00 08 */ stw r0, 8(r31) /* 8005096C 0004D8CC 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80050970 0004D8D0 80 1E 00 10 */ lwz r0, 0x10(r30) /* 80050974 0004D8D4 90 7F 00 0C */ stw r3, 0xc(r31) /* 80050978 0004D8D8 90 1F 00 10 */ stw r0, 0x10(r31) /* 8005097C 0004D8DC 80 1E 00 14 */ lwz r0, 0x14(r30) /* 80050980 0004D8E0 90 1F 00 14 */ stw r0, 0x14(r31) /* 80050984 0004D8E4 80 1E 00 18 */ lwz r0, 0x18(r30) /* 80050988 0004D8E8 90 1F 00 18 */ stw r0, 0x18(r31) /* 8005098C 0004D8EC 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 80050990 0004D8F0 90 1F 00 1C */ stw r0, 0x1c(r31) /* 80050994 0004D8F4 C0 1E 00 20 */ lfs f0, 0x20(r30) /* 80050998 0004D8F8 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 8005099C 0004D8FC C0 1E 00 24 */ lfs f0, 0x24(r30) /* 800509A0 0004D900 D0 1F 00 24 */ stfs f0, 0x24(r31) /* 800509A4 0004D904 C0 1E 00 28 */ lfs f0, 0x28(r30) /* 800509A8 0004D908 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 800509AC 0004D90C C0 1E 00 2C */ lfs f0, 0x2c(r30) /* 800509B0 0004D910 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 800509B4 0004D914 C0 1E 00 30 */ lfs f0, 0x30(r30) /* 800509B8 0004D918 D0 1F 00 30 */ stfs f0, 0x30(r31) /* 800509BC 0004D91C C0 1E 00 34 */ lfs f0, 0x34(r30) /* 800509C0 0004D920 D0 1F 00 34 */ stfs f0, 0x34(r31) /* 800509C4 0004D924 C0 1E 00 38 */ lfs f0, 0x38(r30) /* 800509C8 0004D928 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 800509CC 0004D92C 80 1E 00 3C */ lwz r0, 0x3c(r30) /* 800509D0 0004D930 90 1F 00 3C */ stw r0, 0x3c(r31) /* 800509D4 0004D934 80 1E 00 40 */ lwz r0, 0x40(r30) /* 800509D8 0004D938 90 1F 00 40 */ stw r0, 0x40(r31) /* 800509DC 0004D93C C0 1E 00 44 */ lfs f0, 0x44(r30) /* 800509E0 0004D940 D0 1F 00 44 */ stfs f0, 0x44(r31) /* 800509E4 0004D944 C0 1E 00 48 */ lfs f0, 0x48(r30) /* 800509E8 0004D948 D0 1F 00 48 */ stfs f0, 0x48(r31) /* 800509EC 0004D94C 88 1E 00 4C */ lbz r0, 0x4c(r30) /* 800509F0 0004D950 98 1F 00 4C */ stb r0, 0x4c(r31) /* 800509F4 0004D954 80 61 00 44 */ lwz r3, 0x44(r1) /* 800509F8 0004D958 80 1D 00 3C */ lwz r0, 0x3c(r29) /* 800509FC 0004D95C 7C 03 00 00 */ cmpw r3, r0 /* 80050A00 0004D960 40 81 00 0C */ ble lbl_80050A0C /* 80050A04 0004D964 38 00 00 01 */ li r0, 1 /* 80050A08 0004D968 48 00 00 30 */ b lbl_80050A38 lbl_80050A0C: /* 80050A0C 0004D96C 40 82 00 28 */ bne lbl_80050A34 /* 80050A10 0004D970 7F A3 EB 78 */ mr r3, r29 /* 80050A14 0004D974 48 2B 57 41 */ bl GetIntensity__6CLightCFv /* 80050A18 0004D978 FF E0 08 90 */ fmr f31, f1 /* 80050A1C 0004D97C 38 61 00 08 */ addi r3, r1, 8 /* 80050A20 0004D980 48 2B 57 35 */ bl GetIntensity__6CLightCFv /* 80050A24 0004D984 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 80050A28 0004D988 7C 00 00 26 */ mfcr r0 /* 80050A2C 0004D98C 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f /* 80050A30 0004D990 48 00 00 08 */ b lbl_80050A38 lbl_80050A34: /* 80050A34 0004D994 38 00 00 00 */ li r0, 0 lbl_80050A38: /* 80050A38 0004D998 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80050A3C 0004D99C 41 82 01 48 */ beq lbl_80050B84 /* 80050A40 0004D9A0 80 7D 00 00 */ lwz r3, 0(r29) /* 80050A44 0004D9A4 80 1D 00 04 */ lwz r0, 4(r29) /* 80050A48 0004D9A8 90 7E 00 00 */ stw r3, 0(r30) /* 80050A4C 0004D9AC 90 1E 00 04 */ stw r0, 4(r30) /* 80050A50 0004D9B0 80 1D 00 08 */ lwz r0, 8(r29) /* 80050A54 0004D9B4 90 1E 00 08 */ stw r0, 8(r30) /* 80050A58 0004D9B8 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80050A5C 0004D9BC 80 1D 00 10 */ lwz r0, 0x10(r29) /* 80050A60 0004D9C0 90 7E 00 0C */ stw r3, 0xc(r30) /* 80050A64 0004D9C4 90 1E 00 10 */ stw r0, 0x10(r30) /* 80050A68 0004D9C8 80 1D 00 14 */ lwz r0, 0x14(r29) /* 80050A6C 0004D9CC 90 1E 00 14 */ stw r0, 0x14(r30) /* 80050A70 0004D9D0 80 1D 00 18 */ lwz r0, 0x18(r29) /* 80050A74 0004D9D4 90 1E 00 18 */ stw r0, 0x18(r30) /* 80050A78 0004D9D8 80 1D 00 1C */ lwz r0, 0x1c(r29) /* 80050A7C 0004D9DC 90 1E 00 1C */ stw r0, 0x1c(r30) /* 80050A80 0004D9E0 C0 1D 00 20 */ lfs f0, 0x20(r29) /* 80050A84 0004D9E4 D0 1E 00 20 */ stfs f0, 0x20(r30) /* 80050A88 0004D9E8 C0 1D 00 24 */ lfs f0, 0x24(r29) /* 80050A8C 0004D9EC D0 1E 00 24 */ stfs f0, 0x24(r30) /* 80050A90 0004D9F0 C0 1D 00 28 */ lfs f0, 0x28(r29) /* 80050A94 0004D9F4 D0 1E 00 28 */ stfs f0, 0x28(r30) /* 80050A98 0004D9F8 C0 1D 00 2C */ lfs f0, 0x2c(r29) /* 80050A9C 0004D9FC D0 1E 00 2C */ stfs f0, 0x2c(r30) /* 80050AA0 0004DA00 C0 1D 00 30 */ lfs f0, 0x30(r29) /* 80050AA4 0004DA04 D0 1E 00 30 */ stfs f0, 0x30(r30) /* 80050AA8 0004DA08 C0 1D 00 34 */ lfs f0, 0x34(r29) /* 80050AAC 0004DA0C D0 1E 00 34 */ stfs f0, 0x34(r30) /* 80050AB0 0004DA10 C0 1D 00 38 */ lfs f0, 0x38(r29) /* 80050AB4 0004DA14 D0 1E 00 38 */ stfs f0, 0x38(r30) /* 80050AB8 0004DA18 80 1D 00 3C */ lwz r0, 0x3c(r29) /* 80050ABC 0004DA1C 90 1E 00 3C */ stw r0, 0x3c(r30) /* 80050AC0 0004DA20 80 1D 00 40 */ lwz r0, 0x40(r29) /* 80050AC4 0004DA24 90 1E 00 40 */ stw r0, 0x40(r30) /* 80050AC8 0004DA28 C0 1D 00 44 */ lfs f0, 0x44(r29) /* 80050ACC 0004DA2C D0 1E 00 44 */ stfs f0, 0x44(r30) /* 80050AD0 0004DA30 C0 1D 00 48 */ lfs f0, 0x48(r29) /* 80050AD4 0004DA34 D0 1E 00 48 */ stfs f0, 0x48(r30) /* 80050AD8 0004DA38 88 1D 00 4C */ lbz r0, 0x4c(r29) /* 80050ADC 0004DA3C 98 1E 00 4C */ stb r0, 0x4c(r30) /* 80050AE0 0004DA40 80 61 00 08 */ lwz r3, 8(r1) /* 80050AE4 0004DA44 80 01 00 0C */ lwz r0, 0xc(r1) /* 80050AE8 0004DA48 90 7D 00 00 */ stw r3, 0(r29) /* 80050AEC 0004DA4C 90 1D 00 04 */ stw r0, 4(r29) /* 80050AF0 0004DA50 80 01 00 10 */ lwz r0, 0x10(r1) /* 80050AF4 0004DA54 90 1D 00 08 */ stw r0, 8(r29) /* 80050AF8 0004DA58 80 61 00 14 */ lwz r3, 0x14(r1) /* 80050AFC 0004DA5C 80 01 00 18 */ lwz r0, 0x18(r1) /* 80050B00 0004DA60 90 7D 00 0C */ stw r3, 0xc(r29) /* 80050B04 0004DA64 90 1D 00 10 */ stw r0, 0x10(r29) /* 80050B08 0004DA68 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80050B0C 0004DA6C 90 1D 00 14 */ stw r0, 0x14(r29) /* 80050B10 0004DA70 80 01 00 20 */ lwz r0, 0x20(r1) /* 80050B14 0004DA74 90 1D 00 18 */ stw r0, 0x18(r29) /* 80050B18 0004DA78 80 01 00 24 */ lwz r0, 0x24(r1) /* 80050B1C 0004DA7C 90 1D 00 1C */ stw r0, 0x1c(r29) /* 80050B20 0004DA80 C0 01 00 28 */ lfs f0, 0x28(r1) /* 80050B24 0004DA84 D0 1D 00 20 */ stfs f0, 0x20(r29) /* 80050B28 0004DA88 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80050B2C 0004DA8C D0 1D 00 24 */ stfs f0, 0x24(r29) /* 80050B30 0004DA90 C0 01 00 30 */ lfs f0, 0x30(r1) /* 80050B34 0004DA94 D0 1D 00 28 */ stfs f0, 0x28(r29) /* 80050B38 0004DA98 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80050B3C 0004DA9C D0 1D 00 2C */ stfs f0, 0x2c(r29) /* 80050B40 0004DAA0 C0 01 00 38 */ lfs f0, 0x38(r1) /* 80050B44 0004DAA4 D0 1D 00 30 */ stfs f0, 0x30(r29) /* 80050B48 0004DAA8 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80050B4C 0004DAAC D0 1D 00 34 */ stfs f0, 0x34(r29) /* 80050B50 0004DAB0 C0 01 00 40 */ lfs f0, 0x40(r1) /* 80050B54 0004DAB4 D0 1D 00 38 */ stfs f0, 0x38(r29) /* 80050B58 0004DAB8 80 01 00 44 */ lwz r0, 0x44(r1) /* 80050B5C 0004DABC 90 1D 00 3C */ stw r0, 0x3c(r29) /* 80050B60 0004DAC0 80 01 00 48 */ lwz r0, 0x48(r1) /* 80050B64 0004DAC4 90 1D 00 40 */ stw r0, 0x40(r29) /* 80050B68 0004DAC8 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80050B6C 0004DACC D0 1D 00 44 */ stfs f0, 0x44(r29) /* 80050B70 0004DAD0 C0 01 00 50 */ lfs f0, 0x50(r1) /* 80050B74 0004DAD4 D0 1D 00 48 */ stfs f0, 0x48(r29) /* 80050B78 0004DAD8 88 01 00 54 */ lbz r0, 0x54(r1) /* 80050B7C 0004DADC 98 1D 00 4C */ stb r0, 0x4c(r29) /* 80050B80 0004DAE0 48 00 00 A4 */ b lbl_80050C24 lbl_80050B84: /* 80050B84 0004DAE4 80 61 00 08 */ lwz r3, 8(r1) /* 80050B88 0004DAE8 80 01 00 0C */ lwz r0, 0xc(r1) /* 80050B8C 0004DAEC 90 7E 00 00 */ stw r3, 0(r30) /* 80050B90 0004DAF0 90 1E 00 04 */ stw r0, 4(r30) /* 80050B94 0004DAF4 80 01 00 10 */ lwz r0, 0x10(r1) /* 80050B98 0004DAF8 90 1E 00 08 */ stw r0, 8(r30) /* 80050B9C 0004DAFC 80 61 00 14 */ lwz r3, 0x14(r1) /* 80050BA0 0004DB00 80 01 00 18 */ lwz r0, 0x18(r1) /* 80050BA4 0004DB04 90 7E 00 0C */ stw r3, 0xc(r30) /* 80050BA8 0004DB08 90 1E 00 10 */ stw r0, 0x10(r30) /* 80050BAC 0004DB0C 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80050BB0 0004DB10 90 1E 00 14 */ stw r0, 0x14(r30) /* 80050BB4 0004DB14 80 01 00 20 */ lwz r0, 0x20(r1) /* 80050BB8 0004DB18 90 1E 00 18 */ stw r0, 0x18(r30) /* 80050BBC 0004DB1C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80050BC0 0004DB20 90 1E 00 1C */ stw r0, 0x1c(r30) /* 80050BC4 0004DB24 C0 01 00 28 */ lfs f0, 0x28(r1) /* 80050BC8 0004DB28 D0 1E 00 20 */ stfs f0, 0x20(r30) /* 80050BCC 0004DB2C C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80050BD0 0004DB30 D0 1E 00 24 */ stfs f0, 0x24(r30) /* 80050BD4 0004DB34 C0 01 00 30 */ lfs f0, 0x30(r1) /* 80050BD8 0004DB38 D0 1E 00 28 */ stfs f0, 0x28(r30) /* 80050BDC 0004DB3C C0 01 00 34 */ lfs f0, 0x34(r1) /* 80050BE0 0004DB40 D0 1E 00 2C */ stfs f0, 0x2c(r30) /* 80050BE4 0004DB44 C0 01 00 38 */ lfs f0, 0x38(r1) /* 80050BE8 0004DB48 D0 1E 00 30 */ stfs f0, 0x30(r30) /* 80050BEC 0004DB4C C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80050BF0 0004DB50 D0 1E 00 34 */ stfs f0, 0x34(r30) /* 80050BF4 0004DB54 C0 01 00 40 */ lfs f0, 0x40(r1) /* 80050BF8 0004DB58 D0 1E 00 38 */ stfs f0, 0x38(r30) /* 80050BFC 0004DB5C 80 01 00 44 */ lwz r0, 0x44(r1) /* 80050C00 0004DB60 90 1E 00 3C */ stw r0, 0x3c(r30) /* 80050C04 0004DB64 80 01 00 48 */ lwz r0, 0x48(r1) /* 80050C08 0004DB68 90 1E 00 40 */ stw r0, 0x40(r30) /* 80050C0C 0004DB6C C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80050C10 0004DB70 D0 1E 00 44 */ stfs f0, 0x44(r30) /* 80050C14 0004DB74 C0 01 00 50 */ lfs f0, 0x50(r1) /* 80050C18 0004DB78 D0 1E 00 48 */ stfs f0, 0x48(r30) /* 80050C1C 0004DB7C 88 01 00 54 */ lbz r0, 0x54(r1) /* 80050C20 0004DB80 98 1E 00 4C */ stb r0, 0x4c(r30) lbl_80050C24: /* 80050C24 0004DB84 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 80050C28 0004DB88 80 01 00 84 */ lwz r0, 0x84(r1) /* 80050C2C 0004DB8C CB E1 00 70 */ lfd f31, 0x70(r1) /* 80050C30 0004DB90 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 80050C34 0004DB94 83 C1 00 68 */ lwz r30, 0x68(r1) /* 80050C38 0004DB98 83 A1 00 64 */ lwz r29, 0x64(r1) /* 80050C3C 0004DB9C 7C 08 03 A6 */ mtlr r0 /* 80050C40 0004DBA0 38 21 00 80 */ addi r1, r1, 0x80 /* 80050C44 0004DBA4 4E 80 00 20 */ blr .global sub_80050c48 sub_80050c48: /* 80050C48 0004DBA8 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80050C4C 0004DBAC 7C 08 02 A6 */ mflr r0 /* 80050C50 0004DBB0 90 01 00 64 */ stw r0, 0x64(r1) /* 80050C54 0004DBB4 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80050C58 0004DBB8 7C 9F 23 78 */ mr r31, r4 /* 80050C5C 0004DBBC 93 C1 00 58 */ stw r30, 0x58(r1) /* 80050C60 0004DBC0 7C 7E 1B 78 */ mr r30, r3 /* 80050C64 0004DBC4 7F C4 F3 78 */ mr r4, r30 /* 80050C68 0004DBC8 38 61 00 08 */ addi r3, r1, 8 /* 80050C6C 0004DBCC 4B FE A9 05 */ bl __ct__6CLightFCR6CLight /* 80050C70 0004DBD0 80 7F 00 00 */ lwz r3, 0(r31) /* 80050C74 0004DBD4 80 1F 00 04 */ lwz r0, 4(r31) /* 80050C78 0004DBD8 90 7E 00 00 */ stw r3, 0(r30) /* 80050C7C 0004DBDC 90 1E 00 04 */ stw r0, 4(r30) /* 80050C80 0004DBE0 80 1F 00 08 */ lwz r0, 8(r31) /* 80050C84 0004DBE4 90 1E 00 08 */ stw r0, 8(r30) /* 80050C88 0004DBE8 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80050C8C 0004DBEC 80 1F 00 10 */ lwz r0, 0x10(r31) /* 80050C90 0004DBF0 90 7E 00 0C */ stw r3, 0xc(r30) /* 80050C94 0004DBF4 90 1E 00 10 */ stw r0, 0x10(r30) /* 80050C98 0004DBF8 80 1F 00 14 */ lwz r0, 0x14(r31) /* 80050C9C 0004DBFC 90 1E 00 14 */ stw r0, 0x14(r30) /* 80050CA0 0004DC00 80 1F 00 18 */ lwz r0, 0x18(r31) /* 80050CA4 0004DC04 90 1E 00 18 */ stw r0, 0x18(r30) /* 80050CA8 0004DC08 80 1F 00 1C */ lwz r0, 0x1c(r31) /* 80050CAC 0004DC0C 90 1E 00 1C */ stw r0, 0x1c(r30) /* 80050CB0 0004DC10 C0 1F 00 20 */ lfs f0, 0x20(r31) /* 80050CB4 0004DC14 D0 1E 00 20 */ stfs f0, 0x20(r30) /* 80050CB8 0004DC18 C0 1F 00 24 */ lfs f0, 0x24(r31) /* 80050CBC 0004DC1C D0 1E 00 24 */ stfs f0, 0x24(r30) /* 80050CC0 0004DC20 C0 1F 00 28 */ lfs f0, 0x28(r31) /* 80050CC4 0004DC24 D0 1E 00 28 */ stfs f0, 0x28(r30) /* 80050CC8 0004DC28 C0 1F 00 2C */ lfs f0, 0x2c(r31) /* 80050CCC 0004DC2C D0 1E 00 2C */ stfs f0, 0x2c(r30) /* 80050CD0 0004DC30 C0 1F 00 30 */ lfs f0, 0x30(r31) /* 80050CD4 0004DC34 D0 1E 00 30 */ stfs f0, 0x30(r30) /* 80050CD8 0004DC38 C0 1F 00 34 */ lfs f0, 0x34(r31) /* 80050CDC 0004DC3C D0 1E 00 34 */ stfs f0, 0x34(r30) /* 80050CE0 0004DC40 C0 1F 00 38 */ lfs f0, 0x38(r31) /* 80050CE4 0004DC44 D0 1E 00 38 */ stfs f0, 0x38(r30) /* 80050CE8 0004DC48 80 1F 00 3C */ lwz r0, 0x3c(r31) /* 80050CEC 0004DC4C 90 1E 00 3C */ stw r0, 0x3c(r30) /* 80050CF0 0004DC50 80 1F 00 40 */ lwz r0, 0x40(r31) /* 80050CF4 0004DC54 90 1E 00 40 */ stw r0, 0x40(r30) /* 80050CF8 0004DC58 C0 1F 00 44 */ lfs f0, 0x44(r31) /* 80050CFC 0004DC5C D0 1E 00 44 */ stfs f0, 0x44(r30) /* 80050D00 0004DC60 C0 1F 00 48 */ lfs f0, 0x48(r31) /* 80050D04 0004DC64 D0 1E 00 48 */ stfs f0, 0x48(r30) /* 80050D08 0004DC68 88 1F 00 4C */ lbz r0, 0x4c(r31) /* 80050D0C 0004DC6C 98 1E 00 4C */ stb r0, 0x4c(r30) /* 80050D10 0004DC70 80 61 00 08 */ lwz r3, 8(r1) /* 80050D14 0004DC74 80 01 00 0C */ lwz r0, 0xc(r1) /* 80050D18 0004DC78 90 7F 00 00 */ stw r3, 0(r31) /* 80050D1C 0004DC7C 90 1F 00 04 */ stw r0, 4(r31) /* 80050D20 0004DC80 80 01 00 10 */ lwz r0, 0x10(r1) /* 80050D24 0004DC84 90 1F 00 08 */ stw r0, 8(r31) /* 80050D28 0004DC88 80 61 00 14 */ lwz r3, 0x14(r1) /* 80050D2C 0004DC8C 80 01 00 18 */ lwz r0, 0x18(r1) /* 80050D30 0004DC90 90 7F 00 0C */ stw r3, 0xc(r31) /* 80050D34 0004DC94 90 1F 00 10 */ stw r0, 0x10(r31) /* 80050D38 0004DC98 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80050D3C 0004DC9C 90 1F 00 14 */ stw r0, 0x14(r31) /* 80050D40 0004DCA0 80 01 00 20 */ lwz r0, 0x20(r1) /* 80050D44 0004DCA4 90 1F 00 18 */ stw r0, 0x18(r31) /* 80050D48 0004DCA8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80050D4C 0004DCAC 90 1F 00 1C */ stw r0, 0x1c(r31) /* 80050D50 0004DCB0 C0 01 00 28 */ lfs f0, 0x28(r1) /* 80050D54 0004DCB4 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 80050D58 0004DCB8 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80050D5C 0004DCBC D0 1F 00 24 */ stfs f0, 0x24(r31) /* 80050D60 0004DCC0 C0 01 00 30 */ lfs f0, 0x30(r1) /* 80050D64 0004DCC4 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 80050D68 0004DCC8 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80050D6C 0004DCCC D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 80050D70 0004DCD0 C0 01 00 38 */ lfs f0, 0x38(r1) /* 80050D74 0004DCD4 D0 1F 00 30 */ stfs f0, 0x30(r31) /* 80050D78 0004DCD8 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80050D7C 0004DCDC D0 1F 00 34 */ stfs f0, 0x34(r31) /* 80050D80 0004DCE0 C0 01 00 40 */ lfs f0, 0x40(r1) /* 80050D84 0004DCE4 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 80050D88 0004DCE8 80 01 00 44 */ lwz r0, 0x44(r1) /* 80050D8C 0004DCEC 90 1F 00 3C */ stw r0, 0x3c(r31) /* 80050D90 0004DCF0 80 01 00 48 */ lwz r0, 0x48(r1) /* 80050D94 0004DCF4 90 1F 00 40 */ stw r0, 0x40(r31) /* 80050D98 0004DCF8 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80050D9C 0004DCFC D0 1F 00 44 */ stfs f0, 0x44(r31) /* 80050DA0 0004DD00 C0 01 00 50 */ lfs f0, 0x50(r1) /* 80050DA4 0004DD04 D0 1F 00 48 */ stfs f0, 0x48(r31) /* 80050DA8 0004DD08 88 01 00 54 */ lbz r0, 0x54(r1) /* 80050DAC 0004DD0C 98 1F 00 4C */ stb r0, 0x4c(r31) /* 80050DB0 0004DD10 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 80050DB4 0004DD14 83 C1 00 58 */ lwz r30, 0x58(r1) /* 80050DB8 0004DD18 80 01 00 64 */ lwz r0, 0x64(r1) /* 80050DBC 0004DD1C 7C 08 03 A6 */ mtlr r0 /* 80050DC0 0004DD20 38 21 00 60 */ addi r1, r1, 0x60 /* 80050DC4 0004DD24 4E 80 00 20 */ blr .global "__sort3__4rstlFRPC9CGameAreaRPC9CGameAreaRPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter" "__sort3__4rstlFRPC9CGameAreaRPC9CGameAreaRPC9CGameAreaQ227@unnamed@CStateManager_cpp@11area_sorter": /* 80050DC8 0004DD28 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80050DCC 0004DD2C 7C 08 02 A6 */ mflr r0 /* 80050DD0 0004DD30 90 01 00 24 */ stw r0, 0x24(r1) /* 80050DD4 0004DD34 BF 61 00 0C */ stmw r27, 0xc(r1) /* 80050DD8 0004DD38 7C 9C 23 78 */ mr r28, r4 /* 80050DDC 0004DD3C 7C 7B 1B 78 */ mr r27, r3 /* 80050DE0 0004DD40 7C BD 2B 78 */ mr r29, r5 /* 80050DE4 0004DD44 7C DE 33 78 */ mr r30, r6 /* 80050DE8 0004DD48 7F C3 F3 78 */ mr r3, r30 /* 80050DEC 0004DD4C 80 84 00 00 */ lwz r4, 0(r4) /* 80050DF0 0004DD50 80 BB 00 00 */ lwz r5, 0(r27) /* 80050DF4 0004DD54 4B FF E6 0D */ bl "__cl__Q227@unnamed@CStateManager_cpp@11area_sorterCFPC9CGameAreaPC9CGameArea" /* 80050DF8 0004DD58 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80050DFC 0004DD5C 41 82 00 14 */ beq lbl_80050E10 /* 80050E00 0004DD60 80 7B 00 00 */ lwz r3, 0(r27) /* 80050E04 0004DD64 80 1C 00 00 */ lwz r0, 0(r28) /* 80050E08 0004DD68 90 1B 00 00 */ stw r0, 0(r27) /* 80050E0C 0004DD6C 90 7C 00 00 */ stw r3, 0(r28) lbl_80050E10: /* 80050E10 0004DD70 80 9D 00 00 */ lwz r4, 0(r29) /* 80050E14 0004DD74 7F C3 F3 78 */ mr r3, r30 /* 80050E18 0004DD78 80 BC 00 00 */ lwz r5, 0(r28) /* 80050E1C 0004DD7C 4B FF E5 E5 */ bl "__cl__Q227@unnamed@CStateManager_cpp@11area_sorterCFPC9CGameAreaPC9CGameArea" /* 80050E20 0004DD80 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80050E24 0004DD84 41 82 00 3C */ beq lbl_80050E60 /* 80050E28 0004DD88 83 FD 00 00 */ lwz r31, 0(r29) /* 80050E2C 0004DD8C 7F C3 F3 78 */ mr r3, r30 /* 80050E30 0004DD90 80 1C 00 00 */ lwz r0, 0(r28) /* 80050E34 0004DD94 7F E4 FB 78 */ mr r4, r31 /* 80050E38 0004DD98 90 1D 00 00 */ stw r0, 0(r29) /* 80050E3C 0004DD9C 80 BB 00 00 */ lwz r5, 0(r27) /* 80050E40 0004DDA0 4B FF E5 C1 */ bl "__cl__Q227@unnamed@CStateManager_cpp@11area_sorterCFPC9CGameAreaPC9CGameArea" /* 80050E44 0004DDA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80050E48 0004DDA8 41 82 00 14 */ beq lbl_80050E5C /* 80050E4C 0004DDAC 80 1B 00 00 */ lwz r0, 0(r27) /* 80050E50 0004DDB0 90 1C 00 00 */ stw r0, 0(r28) /* 80050E54 0004DDB4 93 FB 00 00 */ stw r31, 0(r27) /* 80050E58 0004DDB8 48 00 00 08 */ b lbl_80050E60 lbl_80050E5C: /* 80050E5C 0004DDBC 93 FC 00 00 */ stw r31, 0(r28) lbl_80050E60: /* 80050E60 0004DDC0 BB 61 00 0C */ lmw r27, 0xc(r1) /* 80050E64 0004DDC4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80050E68 0004DDC8 7C 08 03 A6 */ mtlr r0 /* 80050E6C 0004DDCC 38 21 00 20 */ addi r1, r1, 0x20 /* 80050E70 0004DDD0 4E 80 00 20 */ blr .global "__insertion_sort,Q24rstl17rmemory_allocator>,15CLightPredicate>__4rstlFQ24rstl104pointer_iterator<6CLight,Q24rstl42vector<6CLight,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl104pointer_iterator<6CLight,Q24rstl42vector<6CLight,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>15CLightPredicate" "__insertion_sort,Q24rstl17rmemory_allocator>,15CLightPredicate>__4rstlFQ24rstl104pointer_iterator<6CLight,Q24rstl42vector<6CLight,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl104pointer_iterator<6CLight,Q24rstl42vector<6CLight,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>15CLightPredicate": /* 80050E74 0004DDD4 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80050E78 0004DDD8 7C 08 02 A6 */ mflr r0 /* 80050E7C 0004DDDC 90 01 00 84 */ stw r0, 0x84(r1) /* 80050E80 0004DDE0 DB E1 00 70 */ stfd f31, 0x70(r1) /* 80050E84 0004DDE4 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 80050E88 0004DDE8 BF 61 00 5C */ stmw r27, 0x5c(r1) /* 80050E8C 0004DDEC 7C 7B 1B 78 */ mr r27, r3 /* 80050E90 0004DDF0 7C 9C 23 78 */ mr r28, r4 /* 80050E94 0004DDF4 83 E3 00 00 */ lwz r31, 0(r3) /* 80050E98 0004DDF8 3B FF 00 50 */ addi r31, r31, 0x50 /* 80050E9C 0004DDFC 48 00 01 C0 */ b lbl_8005105C lbl_80050EA0: /* 80050EA0 0004DE00 7F E4 FB 78 */ mr r4, r31 /* 80050EA4 0004DE04 38 61 00 08 */ addi r3, r1, 8 /* 80050EA8 0004DE08 4B FE A6 C9 */ bl __ct__6CLightFCR6CLight /* 80050EAC 0004DE0C 7F FD FB 78 */ mr r29, r31 /* 80050EB0 0004DE10 3B DF FF B0 */ addi r30, r31, -80 /* 80050EB4 0004DE14 48 00 00 AC */ b lbl_80050F60 lbl_80050EB8: /* 80050EB8 0004DE18 80 7E 00 00 */ lwz r3, 0(r30) /* 80050EBC 0004DE1C 80 1E 00 04 */ lwz r0, 4(r30) /* 80050EC0 0004DE20 90 7D 00 00 */ stw r3, 0(r29) /* 80050EC4 0004DE24 90 1D 00 04 */ stw r0, 4(r29) /* 80050EC8 0004DE28 80 1E 00 08 */ lwz r0, 8(r30) /* 80050ECC 0004DE2C 90 1D 00 08 */ stw r0, 8(r29) /* 80050ED0 0004DE30 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80050ED4 0004DE34 80 1E 00 10 */ lwz r0, 0x10(r30) /* 80050ED8 0004DE38 90 7D 00 0C */ stw r3, 0xc(r29) /* 80050EDC 0004DE3C 90 1D 00 10 */ stw r0, 0x10(r29) /* 80050EE0 0004DE40 80 1E 00 14 */ lwz r0, 0x14(r30) /* 80050EE4 0004DE44 90 1D 00 14 */ stw r0, 0x14(r29) /* 80050EE8 0004DE48 80 1E 00 18 */ lwz r0, 0x18(r30) /* 80050EEC 0004DE4C 90 1D 00 18 */ stw r0, 0x18(r29) /* 80050EF0 0004DE50 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 80050EF4 0004DE54 90 1D 00 1C */ stw r0, 0x1c(r29) /* 80050EF8 0004DE58 C0 1E 00 20 */ lfs f0, 0x20(r30) /* 80050EFC 0004DE5C D0 1D 00 20 */ stfs f0, 0x20(r29) /* 80050F00 0004DE60 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 80050F04 0004DE64 D0 1D 00 24 */ stfs f0, 0x24(r29) /* 80050F08 0004DE68 C0 1E 00 28 */ lfs f0, 0x28(r30) /* 80050F0C 0004DE6C D0 1D 00 28 */ stfs f0, 0x28(r29) /* 80050F10 0004DE70 C0 1E 00 2C */ lfs f0, 0x2c(r30) /* 80050F14 0004DE74 D0 1D 00 2C */ stfs f0, 0x2c(r29) /* 80050F18 0004DE78 C0 1E 00 30 */ lfs f0, 0x30(r30) /* 80050F1C 0004DE7C D0 1D 00 30 */ stfs f0, 0x30(r29) /* 80050F20 0004DE80 C0 1E 00 34 */ lfs f0, 0x34(r30) /* 80050F24 0004DE84 D0 1D 00 34 */ stfs f0, 0x34(r29) /* 80050F28 0004DE88 C0 1E 00 38 */ lfs f0, 0x38(r30) /* 80050F2C 0004DE8C D0 1D 00 38 */ stfs f0, 0x38(r29) /* 80050F30 0004DE90 80 1E 00 3C */ lwz r0, 0x3c(r30) /* 80050F34 0004DE94 90 1D 00 3C */ stw r0, 0x3c(r29) /* 80050F38 0004DE98 80 1E 00 40 */ lwz r0, 0x40(r30) /* 80050F3C 0004DE9C 90 1D 00 40 */ stw r0, 0x40(r29) /* 80050F40 0004DEA0 C0 1E 00 44 */ lfs f0, 0x44(r30) /* 80050F44 0004DEA4 D0 1D 00 44 */ stfs f0, 0x44(r29) /* 80050F48 0004DEA8 C0 1E 00 48 */ lfs f0, 0x48(r30) /* 80050F4C 0004DEAC D0 1D 00 48 */ stfs f0, 0x48(r29) /* 80050F50 0004DEB0 88 1E 00 4C */ lbz r0, 0x4c(r30) /* 80050F54 0004DEB4 3B DE FF B0 */ addi r30, r30, -80 /* 80050F58 0004DEB8 98 1D 00 4C */ stb r0, 0x4c(r29) /* 80050F5C 0004DEBC 3B BD FF B0 */ addi r29, r29, -80 lbl_80050F60: /* 80050F60 0004DEC0 80 1B 00 00 */ lwz r0, 0(r27) /* 80050F64 0004DEC4 7C 00 E8 40 */ cmplw r0, r29 /* 80050F68 0004DEC8 40 80 00 50 */ bge lbl_80050FB8 /* 80050F6C 0004DECC 80 61 00 44 */ lwz r3, 0x44(r1) /* 80050F70 0004DED0 80 1E 00 3C */ lwz r0, 0x3c(r30) /* 80050F74 0004DED4 7C 03 00 00 */ cmpw r3, r0 /* 80050F78 0004DED8 40 81 00 0C */ ble lbl_80050F84 /* 80050F7C 0004DEDC 38 00 00 01 */ li r0, 1 /* 80050F80 0004DEE0 48 00 00 30 */ b lbl_80050FB0 lbl_80050F84: /* 80050F84 0004DEE4 40 82 00 28 */ bne lbl_80050FAC /* 80050F88 0004DEE8 7F C3 F3 78 */ mr r3, r30 /* 80050F8C 0004DEEC 48 2B 51 C9 */ bl GetIntensity__6CLightCFv /* 80050F90 0004DEF0 FF E0 08 90 */ fmr f31, f1 /* 80050F94 0004DEF4 38 61 00 08 */ addi r3, r1, 8 /* 80050F98 0004DEF8 48 2B 51 BD */ bl GetIntensity__6CLightCFv /* 80050F9C 0004DEFC FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 80050FA0 0004DF00 7C 00 00 26 */ mfcr r0 /* 80050FA4 0004DF04 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f /* 80050FA8 0004DF08 48 00 00 08 */ b lbl_80050FB0 lbl_80050FAC: /* 80050FAC 0004DF0C 38 00 00 00 */ li r0, 0 lbl_80050FB0: /* 80050FB0 0004DF10 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80050FB4 0004DF14 40 82 FF 04 */ bne lbl_80050EB8 lbl_80050FB8: /* 80050FB8 0004DF18 80 61 00 08 */ lwz r3, 8(r1) /* 80050FBC 0004DF1C 3B FF 00 50 */ addi r31, r31, 0x50 /* 80050FC0 0004DF20 80 01 00 0C */ lwz r0, 0xc(r1) /* 80050FC4 0004DF24 90 7D 00 00 */ stw r3, 0(r29) /* 80050FC8 0004DF28 90 1D 00 04 */ stw r0, 4(r29) /* 80050FCC 0004DF2C 80 01 00 10 */ lwz r0, 0x10(r1) /* 80050FD0 0004DF30 90 1D 00 08 */ stw r0, 8(r29) /* 80050FD4 0004DF34 80 61 00 14 */ lwz r3, 0x14(r1) /* 80050FD8 0004DF38 80 01 00 18 */ lwz r0, 0x18(r1) /* 80050FDC 0004DF3C 90 7D 00 0C */ stw r3, 0xc(r29) /* 80050FE0 0004DF40 90 1D 00 10 */ stw r0, 0x10(r29) /* 80050FE4 0004DF44 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80050FE8 0004DF48 90 1D 00 14 */ stw r0, 0x14(r29) /* 80050FEC 0004DF4C 80 01 00 20 */ lwz r0, 0x20(r1) /* 80050FF0 0004DF50 90 1D 00 18 */ stw r0, 0x18(r29) /* 80050FF4 0004DF54 80 01 00 24 */ lwz r0, 0x24(r1) /* 80050FF8 0004DF58 90 1D 00 1C */ stw r0, 0x1c(r29) /* 80050FFC 0004DF5C C0 01 00 28 */ lfs f0, 0x28(r1) /* 80051000 0004DF60 D0 1D 00 20 */ stfs f0, 0x20(r29) /* 80051004 0004DF64 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80051008 0004DF68 D0 1D 00 24 */ stfs f0, 0x24(r29) /* 8005100C 0004DF6C C0 01 00 30 */ lfs f0, 0x30(r1) /* 80051010 0004DF70 D0 1D 00 28 */ stfs f0, 0x28(r29) /* 80051014 0004DF74 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80051018 0004DF78 D0 1D 00 2C */ stfs f0, 0x2c(r29) /* 8005101C 0004DF7C C0 01 00 38 */ lfs f0, 0x38(r1) /* 80051020 0004DF80 D0 1D 00 30 */ stfs f0, 0x30(r29) /* 80051024 0004DF84 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80051028 0004DF88 D0 1D 00 34 */ stfs f0, 0x34(r29) /* 8005102C 0004DF8C C0 01 00 40 */ lfs f0, 0x40(r1) /* 80051030 0004DF90 D0 1D 00 38 */ stfs f0, 0x38(r29) /* 80051034 0004DF94 80 01 00 44 */ lwz r0, 0x44(r1) /* 80051038 0004DF98 90 1D 00 3C */ stw r0, 0x3c(r29) /* 8005103C 0004DF9C 80 01 00 48 */ lwz r0, 0x48(r1) /* 80051040 0004DFA0 90 1D 00 40 */ stw r0, 0x40(r29) /* 80051044 0004DFA4 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80051048 0004DFA8 D0 1D 00 44 */ stfs f0, 0x44(r29) /* 8005104C 0004DFAC C0 01 00 50 */ lfs f0, 0x50(r1) /* 80051050 0004DFB0 D0 1D 00 48 */ stfs f0, 0x48(r29) /* 80051054 0004DFB4 88 01 00 54 */ lbz r0, 0x54(r1) /* 80051058 0004DFB8 98 1D 00 4C */ stb r0, 0x4c(r29) lbl_8005105C: /* 8005105C 0004DFBC 80 1C 00 00 */ lwz r0, 0(r28) /* 80051060 0004DFC0 7C 1F 00 40 */ cmplw r31, r0 /* 80051064 0004DFC4 41 80 FE 3C */ blt lbl_80050EA0 /* 80051068 0004DFC8 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 8005106C 0004DFCC CB E1 00 70 */ lfd f31, 0x70(r1) /* 80051070 0004DFD0 BB 61 00 5C */ lmw r27, 0x5c(r1) /* 80051074 0004DFD4 80 01 00 84 */ lwz r0, 0x84(r1) /* 80051078 0004DFD8 7C 08 03 A6 */ mtlr r0 /* 8005107C 0004DFDC 38 21 00 80 */ addi r1, r1, 0x80 /* 80051080 0004DFE0 4E 80 00 20 */ blr .section .rodata .balign 8 .global lbl_803CCEE0 lbl_803CCEE0: # ROM: 0x3C9EE0 .asciz "??(??)" .byte 0x50 .asciz "roj col resp" .byte 0x00, 0x4F, 0x62 .asciz "ject list full!" .asciz "DefaultShadow" .balign 4